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