<serviceAuthorization>, élément

Spécifie les paramètres qui autorisent l'accès pour l'entretien des opérations

<configuration>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceAuthorization>

Syntaxe

<serviceAuthorization impersonateCallerForAllOperations="Boolean"
                      principalPermissionMode="None/UseWindowsGroups/UseAspNetRoles/Custom"
                      roleProviderName="String"
                      serviceAuthorizationManagerType="String">
  <authorizationPolicies>
    <add policyType="String" />
  </authorizationPolicies>
</serviceAuthorization>

Attributs et éléments

Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.

Attributs

Attribut Description
impersonateCallerForAllOperations Valeur booléenne qui spécifie si toutes les opérations du service personnifient l'appelant. La valeur par défaut est false.

Lorsqu'une opération de service spécifique personnifie l'appelant, le contexte du thread est basculé sur le contexte de l'appelant avant d'exécuter le service spécifié.
principalPermissionMode Définit la principal de sécurité utilisée pour effectuer les opérations sur le serveur. Les valeurs sont notamment les suivantes :

- Aucun.
- UseWindowsGroups
- UseAspNetRoles
- Personnalisé

La valeur par défaut est UseWindowsGroups. La valeur est de type PrincipalPermissionMode. Pour plus d’informations sur l’utilisation de cet attribut, consultez Guide pratique : Restreindre l’accès à l’aide de la classe PrincipalPermissionAttribute.
roleProviderName Chaîne qui spécifie le nom du fournisseur de rôles, qui fournit des informations de rôle pour une application de Windows Communication Foundation (WCF). La valeur par défaut est une chaîne vide.
ServiceAuthorizationManagerType Chaîne qui contient le type du gestionnaire d'autorisations de service. Pour plus d’informations, consultez ServiceAuthorizationManager.

Éléments enfants

Élément Description
authorizationPolicies Contient une collection des types de la stratégie d'autorisation, qui peuvent être ajoutés à l'aide du mot clé add. Chaque stratégie d'autorisation contient un attribut policyType requis unique qui est une chaîne. L'attribut spécifie une stratégie d'autorisation, qui active la transformation d'un jeu de revendications d'entrée dans un autre jeu de revendications. Le contrôle d'accès peut être accordé ou refusé en fonction de cette opération. Pour plus d’informations, consultez AuthorizationPolicyTypeElement.

Éléments parents

Élément Description
<behavior> Contient une collection de paramètres pour le comportement d’un service.

Notes

Cette section contient des éléments qui affectent l'autorisation, les fournisseurs de rôles personnalisés et l'emprunt d'identité.

L'attribut principalPermissionMode spécifie les groupes d'utilisateurs à utiliser lors de l'autorisation d'utilisation d'une méthode protégée. La valeur par défaut (UseWindowsGroups) spécifie qu'une identité essayant d'accéder à une ressource est recherchée dans les groupes Windows, comme Administrateurs ou Utilisateurs. Vous pouvez également spécifier UseAspNetRoles pour utiliser un fournisseur de rôles personnalisé configuré sous l’élément <system.web>, tel qu’indiqué dans le code suivant.

<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>

Le code suivant présente le roleProviderName utilisé avec l’attribut principalPermissionMode.

<behaviors>
  <behavior name="ServiceBehaviour">
    <serviceAuthorization principalPermissionMode ="UseAspNetRoles"
                          roleProviderName ="SqlProvider" />
  </behavior>
  <!-- Other configuration code not shown. -->
</behaviors>

Pour obtenir un exemple détaillé d’utilisation de cet élément de configuration, consultez Autorisation de l’accès aux opérations de service et Stratégie d’autorisation.

Voir aussi