Exporter (0) Imprimer
Développer tout
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Formats de jeton pris en charge dans ACS

Publication: avril 2011

Mis à jour: mai 2011

S'applique à: Windows Azure

Lorsque vos applications et services Web gèrent l'authentification avec Service de contrôle d'accès Windows Azure AppFabric, le client doit obtenir un jeton de sécurité émis par ACS pour se connecter à votre application ou service. ACS peut émettre des jetons de sécurité aux formats suivants :

noteRemarque
ACS peut émettre des jetons de sécurité dans tous les formats suivants. Le format de jeton qu'utilise ACS pour une application ou un service Web est déterminé par la configuration de l'application de la partie de confiance. Pour des informations concernant la configuration des applications de parties de confiance, voir Applications par partie de confiance.

SAML 1.1 et 2.0

Security Assertion Markup Language (SAML) est le format le plus ancien et le plus courant des jetons utilisés aujourd'hui pour l'authentification unique (SSO) et l'identité basée sur des revendications. SAML spécifie un format XML, pour les jetons ainsi que pour les protocoles, pour l'exécution d'une application Web ou d'un service Web SSO à l'aide des jetons SAML. Pour plus d'informations sur les jetons SAML, voir Spécifications SAML (http://go.microsoft.com/fwlink/?LinkID=213719).

noteRemarque
Les jetons SAML 1.1 et SAML 2.0 sont largement pris en charge par un grand nombre de plates-formes de développement, dont Windows Identity Foundation (http://go.microsoft.com/fwlink/?LinkID=213729).

Voici un exemple de jetons SAML.


<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" AssertionID="uuid-fa8f21f6-1f80-4a23-8744-8fe63ad3b56f" IssueInstant="2011-03-10T02:04:26Z" Issuer="uri:WindowsLiveID" MajorVersion="1" MinorVersion="1">
<saml:Conditions NotBefore="2011-03-10T02:04:26Z" NotOnOrAfter="2011-03-10T10:04:26Z">
<saml:AudienceRestrictionCondition>
<saml:Audience>accesscontrol.windows.net</saml:Audience>
</saml:AudienceRestrictionCondition>
</saml:Conditions>
<saml:AuthenticationStatement AuthenticationInstant="2011-03-10T02:04:26Z" AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password">
<saml:Subject>
<saml:NameIdentifier Format="http://schemas.xmlsoap.org/claims/UPN">XXXXXXXXX@Live.com</saml:NameIdentifier></saml:Subject>
</saml:AuthenticationStatement>
<saml:AttributeStatement>
<saml:Subject>
<saml:NameIdentifier Format="http://schemas.xmlsoap.org/claims/UPN">XXXXXXXXX@Live.com</saml:NameIdentifier>
</saml:Subject>
<saml:Attribute AttributeName="Managed" AttributeNamespace="http://schemas.xmlsoap.org/claims">
<saml:AttributeValue>FALSE</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute AttributeName="Child" AttributeNamespace="http://schemas.xmlsoap.org/claims">
<saml:AttributeValue>FALSE</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute AttributeName="TOUAccepted" AttributeNamespace="http://schemas.xmlsoap.org/claims">
<saml:AttributeValue>TRUE</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute AttributeName="CID" AttributeNamespace="http://schemas.xmlsoap.org/claims">
<saml:AttributeValue>d55dea3aae96e63e</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute AttributeName="EmailAddress" AttributeNamespace="http://schemas.xmlsoap.org/claims">
<saml:AttributeValue>example@contoso.com</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute AttributeName="PUID" AttributeNamespace="http://schemas.xmlsoap.org/claims">
<saml:AttributeValue>00000000000000123</saml:AttributeValue>
</saml:Attribute>
</saml:AttributeStatement>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></CanonicalizationMethod>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"></SignatureMethod>
<Reference URI="#uuid-fa8f21f6-1f80-4a23-8744-8fe63ad3b56e">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"></Transform>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"></DigestMethod>
<DigestValue>zMqHsRnM6/UG72tqenBM3NWHoFk=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>UlUruV...=</SignatureValue>
<KeyInfo>
<X509Data>
<X509SKI>H1D81qy0njcaeJ3fI6gkn6N/jpA=</X509SKI>
</X509Data>
<KeyName>Windows Live ID</KeyName>
</KeyInfo>
</saml:Assertion>

SWT

Les jetons Web simple (SWT) sont conformes à la spécification SimpleWebToken. Les jetons SWT sont exprimés en paires clé/valeur dans un format encodé signées d'une clé de chiffrement. La spécification mandate la présence de certaines paires clé/valeur, mais elle laisse de la place aux paires clé/valeur spécifiques aux applications. Les clés qui sont toujours présentent dans les jetons SWT émis par ACS s'affichent dans le tableau suivant.

 

Clé Description

Émetteur

Une représentation du ACS espace de noms de service qui a émis le jeton. Le modèle de cette valeur est https://<servicenamespace>.accesscontrol.windows.net/.

Public

La valeur du applies_to utilisée pour demander le jeton. La valeur est soit une URI HTTP ou HTTPS.

ExpiresOn

La date à laquelle le jeton expire.

HMACSHA256

La signature HMACSHA256 de toutes les autres paires clé/valeur. Cette paire clé/valeur est toujours la dernière paire clé/valeur dans le jeton. La représentation au format encodé des autres paires clé/valeur (y compris les revendications spécifiques à l'application) est signée.

Outre ces paires clé/valeur, ACS ajoute une ou plusieurs revendications à un jeton avant son émission. Ces revendications sont pilotées par la configuration des règles présentes dans ACS au moment de la demande de jetons. Toutes ces revendications ont un type et une ou plusieurs valeurs, où le type et les valeurs sont des chaînes. Lorsqu'une revendication contient plusieurs valeurs, les valeurs sont séparées par une virgule (« , »). Les revendications sont encodées comme les paires clé/valeur, exactement comme les paires clé/valeur décrites dans le tableau précédent.

Voici un exemple de jeton ACS qui contient les revendications représentées en tant que paires clé/valeur.

Audience=http%3a%2f%2flocalhost%2fmyservice&ExpiresOn=1255913549Issuer=https%3a%2f%2fmyservice.accesscontrol.windows.net%2f&role=Admin%2cUser&role=Admin%2cUser&&HMACSHA256=sT7Hr9z%2b3t1oDFLpq5GOToVsu6Dyxpq7hHsSAznmwnI%3d

À l'exception de la paire clé/valeur HMACSHA256, ces paires peuvent être dans n'importe quel ordre. Le jeton ACS suivant équivaut au jeton ACS précédent sauf pour les signatures qui sont différentes.

role=Admin%2cUser&customerName=Contoso%20Corporation&Issuer=https%3a%2f%2fmyservice.accesscontrol.windows.net%2f&Audience=http%3a%2f%2flocalhost%2fmyservice&ExpiresOn=1255912922&HMACSHA256=yuVO%2fwc58%2ftYP36%2fDM1mS%2fHr0hswpsGTWwgfvAbpL64%3d

Le tableau suivant représente le contenu du jeton avec des valeurs décodées d'URL.

 

Source Clé Valeur encodée d'URL Valeur décodée d'URL

Revendications définies par l'utilisateur

rôle

Admin%2cUser

Administrateur,Utilisateur

customerName

Contoso%20Corporation

Contoso Corporation

Revendications définies par le système

Émetteur

https%3a%2f%2fmyservice.accesscontrol.windows.net%2f

https://myservice.accesscontrol.windows.net/

Public

http%3a%2f%2flocalhost%2fmyservice

http://localhost/myservice

ExpiresOn

1255912922

1255912922

HMACSHA256

yuVO%2fwc58%2ftYP36%2fDM1mS%2fHr0hswpsGTWwgfvAbpL64%3d

yuVO/wc58/tYP36/DM1mS/Hr0hswpsGTWwgfvAbpL64=

Protocoles et jetons ACS

Lorsqu'un jeton SAML 2.0, SAML 1.1 ou SWT est émis, ACS utilise différents protocoles standard pour retourner le jeton à une application ou à un service Web. ACS prend en charge les combinaisons de jetons format/protocole suivantes :

  • ACS peut émettre et renvoyer les jetons SAML 2.0 sur les protocoles WS-Trust et WS-Federation (en fonction du protocole utilisé dans la demande de jetons).

  • ACS peut émettre et renvoyer les jetons SAML 1.1 sur les protocoles WS-Federation et les protocoles WS-Trust liés (en fonction du protocole utilisé dans la demande de jetons).

  • ACS peut émettre et renvoyer les jetons SWT sur WS-Federation, WS-Trust et les protocoles OAuth WRAP ou OAuth 2.0 (en fonction du protocole utilisé dans la demande de jetons).

Voir aussi

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.
Afficher:
© 2014 Microsoft. Tous droits réservés.