ユーザーアカウントとサービスアカウントの違いを知りたいのですが。
私はそれを知っています、例えばJenkins
ubuntuにインストールされているのはユーザーではなく、サービスアカウントです。
- サービスアカウントの使用とは何ですか?
- 必要なときは?
- サービスアカウントを作成するにはどうすればよいですか?
承認された回答:
ユーザーアカウントは実際のユーザーによって使用され、サービスアカウントは、Webサーバー、メールトランスポートエージェント、データベースなどのシステムサービスによって使用されます。慣例により、また慣例により、サービスアカウントのユーザーIDは低い範囲になります。 <1000かそこら。 UID 0を除いて、サービスアカウントには特別な権限はありません。サービスアカウントは、特定のリソース、さらにはデバイスの特殊ファイルを所有している場合がありますが、スーパーユーザーのような特権はありません。
サービスアカウントは、通常のユーザーアカウントと同じように作成できます(例:useradd
を使用) )。ただし、サービスアカウントは通常、サービスソフトウェアのインストール時にパッケージマネージャーによって作成および構成されます。したがって、管理者であっても、サービスアカウントの作成に直接関与することはめったにありません。
正当な理由:ユーザーアカウントとは対照的に、サービスアカウントには「適切な」ログインシェルがないことがよくあります。つまり、/usr/sbin/nologin
があります。 ログインシェルとして(または、昔は/bin/false
)。さらに、サービスアカウントは通常ロックされています。つまり、ログインできません(従来の/etc/passwd
の場合) および/etc/shadow
これは、パスワードハッシュを*
などの任意の値に設定することで実現できます。 またはx
)。これは、不正使用に対してサービスアカウントを強化するためです(多層防御 。
サービスごとに個別のサービスアカウントを持つことは、2つの主な目的を果たします。1つのサービスでインシデントが発生した場合の影響を軽減するためのセキュリティ対策です(コンパートメント化 )、どのリソースがどのサービスに属しているかを追跡しやすくなるため、管理が簡素化されます。詳細については、関連する質問についてこれまたはこの回答を参照してください。