SharePoint Server でサービス アプリケーションの管理者を割り当てる、または削除する
適用対象:2016 2019 Subscription Edition SharePoint in Microsoft 365
SharePoint Server サービス アプリケーションの管理者は、そのサービス アプリケーションに対する他の管理者の割り当てまたは削除を行うために、ファーム管理者グループのメンバーである必要があります。 サービス アプリケーション管理者には、SharePoint サーバーの全体管理 Web サイトへのセキュリティでトリミングされたアクセス権が付与され、サービス アプリケーションに関連する設定を管理できますが、他のサービス アプリケーション管理者を追加および削除するにはファーム管理者グループのメンバーである必要があります。
注:
既定では、ファーム管理者グループのメンバーにすべてのサービス アプリケーションを管理する権限が付与されています。
サービス アプリケーション管理者の割り当てまたは削除は、SharePoint サーバーの全体管理 Web サイトまたは Microsoft PowerShell を使用して行うことができます。
全体管理を使用して管理者をサービス アプリケーションに割り当てるまたは削除する方法
この手順を実行するユーザー アカウントがファーム管理者グループのメンバーであることを確認します。
サーバーの全体管理のホーム ページの [ アプリケーション構成の管理] セクションで、[ サービス アプリケーションの管理] をクリックします。
[サービス アプリケーションの管理] ページで、管理者を割り当てるまたは削除するサービス アプリケーションが存在する行を選択します。 リボンが使用可能になります。
リボンの [ 管理者] をクリックします。
管理者を追加する場合、以下を実行します。
- このページの最初のテキスト ボックスに、追加するユーザー アカウントまたはグループを入力します。 [ 連絡先] アイコンをクリックして名前を確認できます。 [ アドレス帳] アイコンをクリックして、追加したユーザーを検索できます。 複数の管理者をこのテキスト ボックスに追加することができます。
- 管理者を追加したら、[ OK] をクリックします。
管理者を削除する場合、以下を実行します。
- このページの 2 番目のテキスト ボックスで、削除する管理者を選択します。 この手順では、ユーザーがシステムから削除されるのではなく、選択したサービス アプリケーションに対するユーザーの管理アクセス許可を取り消すだけです。
- [削除] をクリックします。
- 管理者を削除したら、 [OK] をクリックします。
PowerShell を使用してサービス アプリケーションに管理者を割り当てる、または削除する方法
次の最小要件を満たしていることを確認します:
SQL Server インスタンスに対する securityadmin 固定サーバー ロールのメンバーシップが必要です。
更新するすべてのデータベースに対する db_owner 固定データベース ロールのメンバーシップが必要です。
PowerShell コマンドレットを実行するサーバーの Administrators グループのメンバーである必要があります。
注:
これらの権限がない場合は、セットアップ管理者または SQL Server 管理者に連絡して、これらの権限を要求してください。
PowerShell のアクセス許可の詳細については、「アクセス許可」と「Add-SPShellAdmin」を参照してください。
SharePoint 管理シェルを起動します。
クレーム プリンシパルを作成するために、PowerShell コマンド プロンプトで次のコマンドを入力します。
$principal = New-SPClaimsPrincipal "<contoso\jane>" -IdentityType WindowsSamAccountName
contoso\jane は、管理アクセス許可を割り当てるユーザー名です。 ユーザー名は、 jane@contoso.com または contoso\jane の形式で入力する必要があります。 新しいクレーム プリンシパルは、 $principal 変数に格納されます。
サービス アプリケーションを取得するには、次のコマンドレットを入力します。
$spapp = Get-SPServiceApplication -Name "<ServiceApplicationDisplayName>"
ServiceApplicationDisplayName はサービス アプリケーションの表示名です。 サービス アプリケーション ID は、 $spapp 変数に格納されます。
重要
表示名は引用符で囲む必要があり、サービス アプリケーションの表示名に正確に一致する必要があります。 これには大文字/小文字の区別も含まれます。 同一の表示名を持つ複数のサービス アプリケーションを削除する場合 (これは推奨されていません)、 Get-SPServiceApplication コマンドレットを使用してすべてのサービス アプリケーションを表示できます。 その GUID によってサービス アプリケーションを識別できます。 詳細については、「 Get-SPServiceApplication」を参照してください。
サービス アプリケーションの管理者セキュリティ オブジェクトを取得するために、次のコマンドを入力します。
$security = Get-SPServiceApplicationSecurity $spapp -Admin
取得した管理者セキュリティ オブジェクトは、 $security 変数に格納されます。
注意
このコマンドを使用するときに -Admin 引数を追加することが重要です。
新しい要求プリンシパル $principal (この手順の手順 6 で作成) によって識別されたユーザーの管理アクセス許可をサービス アプリケーション管理者セキュリティ オブジェクト $security (この手順の手順 8 で取得) に割り当てるか取り消すには、次の例に示すように適切なコマンドを使用します。
- 管理権限を割り当てるには、次のコマンドを入力します。
Grant-SPObjectSecurity $security $principal "Full Control"
- 管理権限を取り消すには、次のコマンドを入力します。
Revoke-SPObjectSecurity $security $principal
更新された $security セキュリティ オブジェクトをサービス アプリケーションに割り当てるには、次のコマンドを入力します。
Set-SPServiceApplicationSecurity $spapp $security -Admin
注意
このコマンドを使用するときに -Admin 引数を追加することが重要です。
サービス アプリケーションのセキュリティ オブジェクトが適切に更新されたことを確認するため、次のコマンドを入力します。
(Get-SPServiceApplicationSecurity $spapp -Admin).AccessRules
例
次の例では、サービス アカウント ユーザー "contoso\jane" が "Contoso Visio Graphics" という名前のサービス アプリケーションの管理者セキュリティ オブジェクトに追加されます。
$principal = New-SPClaimsPrincipal "contoso\jane" -IdentityType WindowsSamAccountName
$spapp = Get-SPServiceApplication -Name "Contoso Visio Graphics"
$security = Get-SPServiceApplicationSecurity $spapp -Admin
Grant-SPObjectSecurity $security $principal "Full Control"
Set-SPServiceApplicationSecurity $spapp $security -Admin
(Get-SPServiceApplicationSecurity $spapp -Admin).AccessRules
次の例では、サービス アカウント ユーザー "contoso\jane" が "Contoso Visio Graphics" という名前のサービス アプリケーションの管理者セキュリティ オブジェクトから削除されます。
$principal = New-SPClaimsPrincipal "contoso\jane" -IdentityType WindowsSamAccountName
$spapp = Get-SPServiceApplication -Name "Contoso Visio Graphics"
$security = Get-SPServiceApplicationSecurity $spapp -Admin
Revoke-SPObjectSecurity $security $principal "Full Control"
Set-SPServiceApplicationSecurity $spapp $security -Admin
(Get-SPServiceApplicationSecurity $spapp -Admin).AccessRules
詳細については、以下の Microsoft PowerShell の記事を参照してください。
注:
コマンドライン管理タスクを実行するときには Windows PowerShell を使用することが推奨されています。 Stsadm コマンドライン ツールは推奨されていませんが、製品の以前のバージョンとの互換性をサポートするために含まれています。