Partilhar via


<Elemento serviceAuthorization>

Especifica definições que autorizam o acesso a operações de serviço

<configuração>
   <system.serviceModel>
     <comportamentos>
       <ServiceBehaviors>
         <comportamento>
           <autorizaçãoDeServiço>

Sintaxe

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

Atributos e elementos

As secções seguintes descrevem atributos, elementos filhos e elementos progenitores:

Attributes

Attribute Description
se passar por ChamadorParaTudoOperações Um valor booleano que especifica se todas as operações do serviço se fazem passar pelo chamador. A predefinição é false.

Quando uma operação de serviço específica se faz passar pelo chamador, o contexto da thread é alterado para o contexto do chamador antes de executar o serviço especificado.
principalPermissionMode Define o principal utilizado para realizar operações no servidor. Os valores incluem o seguinte:

- None
- UseWindowsGroups
- UseAspNetRoles
- Custom

O valor predefinido é UseWindowsGroups. O valor é do tipo PrincipalPermissionMode. Para mais informações sobre o uso deste atributo, veja Como: Restringir o Acesso com a Classe PrincipalPermissionAttribute.
roleFornecedor Uma cadeia que especifica o nome do fornecedor de funções, que fornece informação de função para uma aplicação Windows Communication Foundation (WCF). O padrão é uma cadeia de caracteres vazia.
ServiceAuthorizationManagerType Uma cadeia contendo o tipo do gestor de autorização de serviço. Para obter mais informações, consulte ServiceAuthorizationManager.

Elementos filho

Elemento Description
authorizationPolicies Contém uma coleção de tipos de políticas de autorização, que podem ser adicionadas usando a add palavra-chave. Cada política de autorização contém um único atributo obrigatório policyType que é uma cadeia. O atributo especifica uma política de autorização, que permite a transformação de um conjunto de reivindicações de entrada noutro conjunto de reivindicações. O controlo de acesso pode ser concedido ou recusado com base nisso. Para obter mais informações, consulte AuthorizationPolicyTypeElement.

Elementos pai

Elemento Description
<comportamento> Contém uma coleção de definições para o comportamento de um serviço.

Observações

Esta secção contém elementos que afetam autorização, fornecedores de papéis personalizados e personificação.

O principalPermissionMode atributo especifica os grupos de utilizadores a utilizar ao autorizar o uso de um método protegido. O valor predefinido é UseWindowsGroups e especifica que grupos do Windows, como "Administradores" ou "Utilizadores", são pesquisados à procura de uma identidade ao tentar aceder a um recurso. Também pode especificar UseAspNetRoles a utilização de um fornecedor de papéis personalizado configurado sob o <elemento system.web> , conforme mostrado no seguinte código:

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

O código seguinte mostra o roleProviderName utilizado com o principalPermissionMode atributo:

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

Para um exemplo detalhado de utilização deste elemento de configuração, veja Autorizar Acesso às Operações de Serviço e Política de Autorização.

Consulte também