Dela via


<serviceAuthorization-element>

Anger inställningar som tillåter åtkomst till tjänståtgärder

<Konfiguration>
   <system.serviceModel>
     <Beteenden>
       <serviceBehaviors>
         <Beteende>
           <serviceAuthorization>

Syntax

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

Attribut och element

Följande avsnitt beskriver attribut, underordnade element och överordnade element:

Attribut

Attribut Beskrivning
impersonateCallerForAllOperations Ett booleskt värde som anger om alla åtgärder i tjänsten personifierar anroparen. Standardvärdet är false.

När en specifik tjänståtgärd personifierar anroparen växlas trådkontexten till anroparkontexten innan den angivna tjänsten körs.
principalPermissionMode Anger det huvudnamn som används för att utföra åtgärder på servern. Värdena omfattar följande:

-Ingen
– AnvändaWindowsGroups
– UseAspNetRoles
-Anpassade

Standardvärdet är UseWindowsGroups. Värdet är av typen PrincipalPermissionMode. Mer information om hur du använder det här attributet finns i Så här: Begränsa åtkomst med klassen PrincipalPermissionAttribute.
roleProviderName En sträng som anger namnet på rollprovidern, som tillhandahåller rollinformation för ett WCF-program (Windows Communication Foundation). Standardvärdet är en tom sträng.
ServiceAuthorizationManagerType En sträng som innehåller typen av tjänstauktoriseringshanterare. Mer information finns i ServiceAuthorizationManager.

Underordnade element

Element Beskrivning
authorizationPolicies Innehåller en samling auktoriseringsprinciptyper som kan läggas till med hjälp av nyckelordet add . Varje auktoriseringsprincip innehåller ett enda obligatoriskt policyType attribut som är en sträng. Attributet anger en auktoriseringsprincip som möjliggör omvandling av en uppsättning indataanspråk till en annan uppsättning anspråk. Åtkomstkontroll kan beviljas eller nekas baserat på detta. Mer information finns i AuthorizationPolicyTypeElement.

Överordnade element

Element Beskrivning
<Beteende> Innehåller en samling inställningar för en tjänsts beteende.

Kommentarer

Det här avsnittet innehåller element som påverkar auktorisering, anpassade rollprovidrar och personifiering.

Attributet principalPermissionMode anger vilka grupper av användare som ska användas vid auktorisering av användning av en skyddad metod. Standardvärdet är UseWindowsGroups och anger att Windows-grupper, till exempel "Administratörer" eller "Användare", genomsöks efter en identitet som försöker komma åt en resurs. Du kan också ange UseAspNetRoles att du vill använda en anpassad rollprovider som är konfigurerad under elementet <system.web> , enligt följande kod:

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

Följande kod visar det roleProviderName som används med attributet principalPermissionMode :

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

Ett detaljerat exempel på hur du använder det här konfigurationselementet finns i Auktorisera åtkomst till tjänståtgärder och auktoriseringsprincip.

Se även