Dela via


Anspråk och token

I det här avsnittet beskrivs de olika anspråkstyper som Windows Communication Foundation (WCF) skapar från standardtoken som stöds.

Du kan undersöka anspråken för en klientautentiseringsuppgift med hjälp av klasserna ClaimSet och Claim . Innehåller ClaimSet en samling Claim objekt. Var och Claim en har följande viktiga medlemmar:

  • Egenskapen ClaimType returnerar en URI (Uniform Resource Identifier) som anger vilken typ av anspråk som görs. En anspråkstyp kan till exempel vara ett tumavtryck för ett certifikat, i vilket fall URI:n är http://schemas.microsoft.com/ws/20005/05/identity/claims/thumprint.

  • Egenskapen Right returnerar en URI som anger anspråkets rättighet. Fördefinierade rättigheter finns i Rights klassen (Identity, PossessProperty).

  • Egenskapen Resource returnerar resursen som är associerad med anspråket.

Var och ClaimSet en har också en Issuer egenskap som representerar ClaimSet för Issuer.

Windows-konton

När en klientautentiseringsuppgift mappar till ett Windows-användarkonto har resultatet ClaimSet följande värden:

  • Issuer är värdet som returneras av klassens statiska Windows-egenskapClaimSet.

  • Anspråken i samlingen är:

    • A Claim med värdet ClaimType för säkerhetsidentifierare (SID), ett Right egenskapsvärde för Identityoch ett Resource som returnerar det faktiska SID-värdet. Ett SID är ett unikt värde som domänkontrollanten har problem med för varje användare. SID används för att identifiera användaren i interaktioner med Windows-säkerhet.

    • A Claim med värdet ClaimType SID, en Right av PossessPropertyoch ett Resource av SID-värdet.

    • A Claim med en ClaimType av Name, en Right av PossessProperty och en Resource sträng som innehåller användarnamnet (till exempel "MYMACHINE\Bob").

    • Ytterligare SID-anspråk med PossessProperty för de olika grupper som användaren tillhör.

Certifikat

Om klientens autentiseringsuppgifter är ett certifikat har resultatet ClaimSet följande värden:

  • För självutfärdade certifikat är det Issuer sig självt ClaimSet . ClaimSet Returnerar ett ClaimType av Thumbprint, ett Right av Identityoch ett Resource värde som är en Byte matris som innehåller tumavtrycket för certifikatet.

  • För ett certifikat som utfärdats av en certifikatutfärdare är utfärdaren den ClaimSet som representerar certifikatutfärdarens certifikat.

  • I Claims samlingen finns:

    • A Claim med tumavtryck ClaimType , en Right av PossessProperty och en Resource som är en bytematris som innehåller tumavtrycket för certifikatet

    • Ytterligare PossessProperty-anspråk av olika typer, inklusive X500DistinguishedName, Dns, Name, Upn och Rsa, representerar olika egenskaper för certifikatet. Resursen för Rsa-anspråket är den offentliga nyckeln som är associerad med certifikatet.Observera Om klientautentiseringstypen är ett certifikat som tjänsten mappar till ett Windows-konto genereras två ClaimSet objekt. Den första innehåller alla anspråk som är relaterade till Windows-kontot och den andra innehåller alla anspråk som är relaterade till certifikatet.

Användarnamn/lösenord

Om klientens autentiseringsuppgifter är ett användarnamn/lösenord (eller motsvarande) som inte mappas till ett Windows-konto utfärdas resultatet ClaimSet av klassens ClaimSet statiska System egenskap. ClaimSet Innehåller ett Identity anspråk av typen Name vars resurs är det användarnamn som klienten tillhandahåller. Ett motsvarande anspråk har en Right av PossessProperty.

RSA-nycklar

Om en RSA-nyckel som inte är associerad med ett certifikat används, är resultatet självutfärdat ClaimSet och innehåller ett Identity anspråk av typen Rsa vars resurs är RSA-nyckeln. Ett motsvarande anspråk har en Right av PossessProperty.

SAML

När klienten autentiserar med en SAML-token (Security Assertions Markup Language) utfärdas resultatet ClaimSet av entiteten som signerade SAML-token, ofta certifikatet för säkerhetstokentjänsten (STS) som utfärdade SAML-token. Innehåller ClaimSet olika anspråk som finns i SAML-token. Om SAML-token innehåller en SamlSubject med ett icke-namnnull skapas ett Identity anspråk med en typ av NameIdentifier och en resurstyp SamlNameIdentifierClaimResource .

Identitetsanspråk och ServiceSecurityContext.IsAnonymous

Om inget av objekten ClaimSet som härrör från klientautentiseringsuppgifterna innehåller ett anspråk med ett Right av Identity, returnerar IsAnonymoustrueegenskapen . Om ett eller flera sådana anspråk finns returnerar falseegenskapen IsAnonymous .

Se även