<serviceAuthorization> 要素
サービス操作へのアクセスを許可する設定を指定します。
configuration
system.serviceModel
behaviors
<serviceBehaviors>
behavior
<serviceAuthorization>
構文
<serviceAuthorization impersonateCallerForAllOperations="Boolean"
principalPermissionMode="None/UseWindowsGroups/UseAspNetRoles/Custom"
roleProviderName="String"
serviceAuthorizationManagerType="String">
<authorizationPolicies>
<add policyType="String" />
</authorizationPolicies>
</serviceAuthorization>
属性と要素
以降のセクションでは、属性、子要素、親要素について説明します。
属性
属性 | 説明 |
---|---|
impersonateCallerForAllOperations | サービスのすべての操作が呼び出し元を偽装するかどうかを指定するブール値。 既定値は、false です。特定のサービス操作が呼び出し元を偽装する場合、スレッド コンテキストは、指定されたサービスを実行する前に呼び出し元のコンテキストに切り替えられます。 |
principalPermissionMode | サーバーでの操作を実行するために使用されるプリンシパルを設定します。 次の値があります。 - None - UseWindowsGroups - UseAspNetRoles - Custom 既定値は UseWindowsGroups です。 値は、PrincipalPermissionMode 型です。 この属性の使用の詳細については、「方法: PrincipalPermissionAttribute クラスでアクセスを制限する」を参照してください。 |
roleProviderName | Windows Communication Foundation (WCF) アプリケーションにロール情報を提供するロール プロバイダーの名前を指定する文字列。 既定値は空の文字列です。 |
ServiceAuthorizationManagerType | サービス承認マネージャーの型を含む文字列。 詳細については、「ServiceAuthorizationManager」を参照してください。 |
子要素
要素 | 説明 |
---|---|
authorizationPolicies |
add キーワードを使用して追加できる承認ポリシーの種類のコレクションを含みます。 各承認ポリシーは、文字列の単一の必須属性 policyType を含みます。 この属性は、入力クレームのセットをクレームの別のセットに変換することを可能にする承認ポリシーを指定します。 アクセス制御は、それに基づいて許可または拒否されます。 詳細については、「AuthorizationPolicyTypeElement」を参照してください。 |
親要素
要素 | 説明 |
---|---|
<behavior> | サービスの動作設定のコレクションが含まれています。 |
解説
このセクションには、承認、カスタム ロール プロバイダー、および偽装に影響する要素が含まれています。
principalPermissionMode
属性は、保護メソッドの使用を承認するときに使用するユーザー グループを指定します。 既定値は UseWindowsGroups
で、リソースにアクセスしようとしている ID を、"Administrators" や "Users" などの Windows グループから検索するように指定します。
UseAspNetRoles
を指定すると、次のコードに示すように、<system.web> 要素の下で構成されるカスタム ロール プロバイダーを使用することもできます。
<system.web>
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="15">
<providers>
<clear />
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlConn"
applicationName="MembershipProvider"
enablePasswordRetrieval="false"
enablePasswordReset="false"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="true"
passwordFormat="Hashed" />
</providers>
</membership>
<!-- Other configuration code not shown. -->
</system.web>
principalPermissionMode
属性で roleProviderName
を使用する方法を次のコードに示します。
<behaviors>
<behavior name="ServiceBehaviour">
<serviceAuthorization principalPermissionMode ="UseAspNetRoles"
roleProviderName ="SqlProvider" />
</behavior>
<!-- Other configuration code not shown. -->
</behaviors>
この構成要素の使用例については、「サービス操作へのアクセスの承認」と「承認ポリシー」を参照してください。
関連項目
.NET