Share via


Active Directory を使用してオンプレミス コンピューター アカウントをセキュリティで保護する

コンピューター アカウント (LocalSystem アカウント) は、ローカル コンピューター上のほぼすべてのリソースにアクセスできる、高い特権を持っています。 このアカウントは、サインオンしたユーザー アカウントに関連付けられていません。 LocalSystem として実行されているサービスは、コンピューターの資格情報をリモート サーバーに<domain_name>\\<computer_name>$ の形式で提示することによって、ネットワーク リソースにアクセスします。 コンピューター アカウントの定義済みの名前は NT AUTHORITY\SYSTEM です。 サービスを開始し、そのサービスのセキュリティ コンテキストを提供することができます。

Screenshot of a list of local services on a computer account.

コンピューター アカウントを使用する利点

コンピューター アカウントには、次のような利点があります。

  • 無制限のローカル アクセス - コンピューター アカウントでは、コンピューターのローカル リソースに対して完全なアクセス権が付与されます
  • 自動的なパスワード管理 - パスワードを手動で変更する必要がありません。 このアカウントは Active Directory のメンバーであり、パスワードは自動的に変更されます。 コンピューター アカウントを使用すると、サービス プリンシパル名を登録する必要はありません。
  • コンピューター外部での制限付きアクセス権 - Active Directory Domain Services (AD DS) の既定のアクセス制御リストでは、コンピューター アカウントに対して最小限のアクセスが許可されます。 承認されていないユーザーによるアクセス中、サービスはネットワーク リソースへのアクセスが制限されます。

コンピューター アカウントのセキュリティ体制の評価

次の表を使用して、コンピューター アカウントの潜在的な問題と軽減策を確認します。

コンピューター アカウントの問題 対応策
コンピューターがドメインから離脱し、再度参加すると、コンピューター アカウントが削除され、再作成される可能性がある。 Active Directory グループにコンピューターを追加する要件を確認してください。 グループに追加されたコンピューター アカウントを確認するには、次のセクションのスクリプトを使用します。
コンピューター アカウントをグループに追加すると、そのコンピューターで LocalSystem として実行されているサービスに、グループ アクセス権が付与される。 コンピューター アカウント グループのメンバーシップを選択してください。 コンピューター アカウントをドメイン管理者グループのメンバーにしないでください。 関連付けられているサービスは、AD DS への完全なアクセス権を持っています。
LocalSystem のネットワークの既定値が正しくない。 コンピューター アカウントに、ネットワーク リソースへの既定の制限付きアクセス権があると想定しないでください。 代わりに、アカウントのグループ メンバーシップを確認してください。
不明なサービスが LocalSystem として実行されている。 LocalSystem アカウントで実行されているサービスが、Microsoft サービスまたは信頼できるサービスであることを確認します。

サービスとコンピューター アカウントを検索する

コンピューター アカウントで実行されているサービスを検索するには、次の PowerShell コマンドレットを使用します。

Get-WmiObject win32_service | select Name, StartName | Where-Object {($_.StartName -eq "LocalSystem")}

特定のグループのメンバーであるコンピューター アカウントを検索するには、次の PowerShell コマンドレットを実行します。

Get-ADComputer -Filter {Name -Like "*"} -Properties MemberOf | Where-Object {[STRING]$_.MemberOf -like "Your_Group_Name_here*"} | Select Name, MemberOf

ID 管理者グループ (ドメイン管理者、エンタープライズ管理者、管理者) のメンバーであるコンピューター アカウントを検索するには、次の PowerShell コマンドレットを実行します。

Get-ADGroupMember -Identity Administrators -Recursive | Where objectClass -eq "computer"

コンピューター アカウントの推奨事項

重要

コンピューター アカウントは高い特権を持っているため、サービスがコンピューター上でローカル リソースに対して無制限のアクセスを必要とし、管理サービス アカウント (MSA) を使用できない場合にのみ使用してください。

  • サービス所有者のサービスが MSA を使用して実行されていることを確認します
  • サービスでサポートされている場合は、グループ管理サービス アカウント (gMSA) またはスタンドアロン管理サービス アカウント (sMSA) を使用します
  • サービスの実行に必要なアクセス許可を持つドメイン ユーザー アカウントを使用します

次のステップ

サービス アカウントのセキュリティ保護の詳細については、次の記事をご覧ください。