<serviceAuthorization> , element

Określa ustawienia, które autoryzuje dostęp do operacji usługi

<Konfiguracji>
  <System.servicemodel>
    <Zachowania>
      <Servicebehaviors>
        <Zachowanie>
          <serviceAuthorization>

Składnia

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

Atrybuty i elementy

W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne:

Atrybuty

Atrybut Opis
personifikatCallerForAllOperations Wartość logiczna określająca, czy wszystkie operacje w usłudze personifikują obiekt wywołujący. Wartość domyślna to false.

Gdy określona operacja usługi personifikuje obiekt wywołujący, kontekst wątku jest przełączany do kontekstu wywołującego przed wykonaniem określonej usługi.
Principalpermissionmode Ustawia podmiot zabezpieczeń używany do wykonywania operacji na serwerze. Wartości obejmują następujące wartości:

-Brak
- UseWindowsGroups
— UseAspNetRoles
-Niestandardowe

Wartość domyślna to UseWindowsGroups. Wartość jest typu PrincipalPermissionMode. Aby uzyskać więcej informacji na temat używania tego atrybutu, zobacz How to: Restrict Access with the PrincipalPermissionAttribute Class (Instrukcje: ograniczanie dostępu za pomocą klasy PrincipalPermissionAttribute).
roleProviderName Ciąg określający nazwę dostawcy roli, który udostępnia informacje o roli dla aplikacji Windows Communication Foundation (WCF). Wartość domyślna to pusty ciąg.
ServiceAuthorizationManagerType Ciąg zawierający typ menedżera autoryzacji usługi. Aby uzyskać więcej informacji, zobacz ServiceAuthorizationManager.

Elementy podrzędne

Element Opis
authorizationPolicies Zawiera kolekcję typów zasad autoryzacji, które można dodać za pomocą słowa kluczowego add . Każda zasada autoryzacji zawiera jeden wymagany policyType atrybut, który jest ciągiem. Atrybut określa zasady autoryzacji, które umożliwiają przekształcanie jednego zestawu oświadczeń wejściowych w inny zestaw oświadczeń. W oparciu o to można udzielić lub odmówić kontroli dostępu. Aby uzyskać więcej informacji, zobacz AuthorizationPolicyTypeElement.

Elementy nadrzędne

Element Opis
<Zachowanie> Zawiera kolekcję ustawień dotyczących zachowania usługi.

Uwagi

Ta sekcja zawiera elementy wpływające na autoryzację, dostawców ról niestandardowych i personifikację.

Atrybut principalPermissionMode określa grupy użytkowników do użycia podczas autoryzacji metody chronionej. Wartość domyślna to UseWindowsGroups i określa, że grupy systemu Windows, takie jak "Administratorzy" lub "Użytkownicy", są wyszukiwane pod kątem tożsamości próbującej uzyskać dostęp do zasobu. Można również określić UseAspNetRoles , aby użyć niestandardowego dostawcy roli skonfigurowanego w ramach elementu <system.web> , jak pokazano w poniższym kodzie:

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

Poniższy kod przedstawia roleProviderName używany z atrybutem principalPermissionMode :

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

Szczegółowy przykład użycia tego elementu konfiguracji można znaleźć w temacie Autoryzowanie dostępu do operacji usługi i zasad autoryzacji.

Zobacz też