draft-ietf-oauth-saml2-bearer-20.txt | draft-ietf-oauth-saml2-bearer-21.txt | |||
---|---|---|---|---|
OAuth Working Group B. Campbell | OAuth Working Group B. Campbell | |||
Internet-Draft Ping Identity | Internet-Draft Ping Identity | |||
Intended status: Standards Track C. Mortimore | Intended status: Standards Track C. Mortimore | |||
Expires: October 30, 2014 Salesforce | Expires: January 24, 2015 Salesforce | |||
M. Jones | M. Jones | |||
Microsoft | Microsoft | |||
April 28, 2014 | July 23, 2014 | |||
SAML 2.0 Profile for OAuth 2.0 Client Authentication and Authorization | SAML 2.0 Profile for OAuth 2.0 Client Authentication and Authorization | |||
Grants | Grants | |||
draft-ietf-oauth-saml2-bearer-20 | draft-ietf-oauth-saml2-bearer-21 | |||
Abstract | Abstract | |||
This specification defines the use of a SAML 2.0 Bearer Assertion as | This specification defines the use of a SAML 2.0 Bearer Assertion as | |||
a means for requesting an OAuth 2.0 access token as well as for use | a means for requesting an OAuth 2.0 access token as well as for use | |||
as a means of client authentication. | as a means of client authentication. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
skipping to change at page 1, line 36 | skipping to change at page 1, line 36 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on October 30, 2014. | This Internet-Draft will expire on January 24, 2015. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2014 IETF Trust and the persons identified as the | Copyright (c) 2014 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 21 | skipping to change at page 2, line 21 | |||
1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 | 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2. HTTP Parameter Bindings for Transporting Assertions . . . . . 4 | 2. HTTP Parameter Bindings for Transporting Assertions . . . . . 4 | |||
2.1. Using SAML Assertions as Authorization Grants . . . . . . 4 | 2.1. Using SAML Assertions as Authorization Grants . . . . . . 4 | |||
2.2. Using SAML Assertions for Client Authentication . . . . . 5 | 2.2. Using SAML Assertions for Client Authentication . . . . . 5 | |||
3. Assertion Format and Processing Requirements . . . . . . . . 6 | 3. Assertion Format and Processing Requirements . . . . . . . . 6 | |||
3.1. Authorization Grant Processing . . . . . . . . . . . . . 8 | 3.1. Authorization Grant Processing . . . . . . . . . . . . . 8 | |||
3.2. Client Authentication Processing . . . . . . . . . . . . 9 | 3.2. Client Authentication Processing . . . . . . . . . . . . 9 | |||
4. Authorization Grant Example . . . . . . . . . . . . . . . . . 9 | 4. Authorization Grant Example . . . . . . . . . . . . . . . . . 9 | |||
5. Interoperability Considerations . . . . . . . . . . . . . . . 11 | 5. Interoperability Considerations . . . . . . . . . . . . . . . 11 | |||
6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | |||
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | 7. Privacy Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
7.1. Sub-Namespace Registration of urn:ietf:params:oauth | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | |||
8.1. Sub-Namespace Registration of urn:ietf:params:oauth | ||||
:grant-type:saml2-bearer . . . . . . . . . . . . . . . . 12 | :grant-type:saml2-bearer . . . . . . . . . . . . . . . . 12 | |||
7.2. Sub-Namespace Registration of urn:ietf:params:oauth | 8.2. Sub-Namespace Registration of urn:ietf:params:oauth | |||
:client-assertion-type:saml2-bearer . . . . . . . . . . . 12 | :client-assertion-type:saml2-bearer . . . . . . . . . . . 12 | |||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
8.1. Normative References . . . . . . . . . . . . . . . . . . 12 | 9.1. Normative References . . . . . . . . . . . . . . . . . . 13 | |||
8.2. Informative References . . . . . . . . . . . . . . . . . 13 | 9.2. Informative References . . . . . . . . . . . . . . . . . 13 | |||
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 14 | Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 14 | |||
Appendix B. Document History . . . . . . . . . . . . . . . . . . 14 | Appendix B. Document History . . . . . . . . . . . . . . . . . . 14 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
1. Introduction | 1. Introduction | |||
The Security Assertion Markup Language (SAML) 2.0 | The Security Assertion Markup Language (SAML) 2.0 | |||
[OASIS.saml-core-2.0-os] is an XML-based framework that allows | [OASIS.saml-core-2.0-os] is an XML-based framework that allows | |||
identity and security information to be shared across security | identity and security information to be shared across security | |||
domains. The SAML specification, while primarily targeted at | domains. The SAML specification, while primarily targeted at | |||
skipping to change at page 9, line 40 | skipping to change at page 9, line 40 | |||
The example shows an assertion issued and signed by the SAML Identity | The example shows an assertion issued and signed by the SAML Identity | |||
Provider identified as "https://saml-idp.example.com". The subject | Provider identified as "https://saml-idp.example.com". The subject | |||
of the assertion is identified by email address as | of the assertion is identified by email address as | |||
"brian@example.com", who authenticated to the Identity Provider by | "brian@example.com", who authenticated to the Identity Provider by | |||
means of a digital signature where the key was validated as part of | means of a digital signature where the key was validated as part of | |||
an X.509 Public Key Infrastructure. The intended audience of the | an X.509 Public Key Infrastructure. The intended audience of the | |||
assertion is "https://saml-sp.example.net", which is an identifier | assertion is "https://saml-sp.example.net", which is an identifier | |||
for a SAML Service Provider with which the authorization server | for a SAML Service Provider with which the authorization server | |||
identifies itself. The assertion is sent as part of an access token | identifies itself. The assertion is sent as part of an access token | |||
request to the authorization server's token endpoint at "https:// | request to the authorization server's token endpoint at | |||
authz.example.net/token.oauth2". | "https://authz.example.net/token.oauth2". | |||
Below is an example SAML 2.0 Assertion (whitespace formatting is for | Below is an example SAML 2.0 Assertion (whitespace formatting is for | |||
display purposes only): | display purposes only): | |||
<Assertion IssueInstant="2010-10-01T20:07:34.619Z" | <Assertion IssueInstant="2010-10-01T20:07:34.619Z" | |||
ID="ef1xsbZxPV2oqjd7HTLRLIBlBb7" | ID="ef1xsbZxPV2oqjd7HTLRLIBlBb7" | |||
Version="2.0" | Version="2.0" | |||
xmlns="urn:oasis:names:tc:SAML:2.0:assertion"> | xmlns="urn:oasis:names:tc:SAML:2.0:assertion"> | |||
<Issuer>https://saml-idp.example.com</Issuer> | <Issuer>https://saml-idp.example.com</Issuer> | |||
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> | <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> | |||
[...omitted for brevity...] | [...omitted for brevity...] | |||
</ds:Signature> | </ds:Signature> | |||
<Subject> | <Subject> | |||
<NameID | <NameID | |||
Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"> | Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"> | |||
brian@example.com | brian@example.com | |||
</NameID> | </NameID> | |||
<SubjectConfirmation | <SubjectConfirmation | |||
Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> | Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> | |||
<SubjectConfirmationData | <SubjectConfirmationData | |||
NotOnOrAfter="2010-10-01T20:12:34.619Z" | NotOnOrAfter="2010-10-01T20:12:34.619Z" | |||
Recipient="https://authz.example.net/token.oauth2"/> | Recipient="https://authz.example.net/token.oauth2"/> | |||
</SubjectConfirmation> | </SubjectConfirmation> | |||
</Subject> | </Subject> | |||
<Conditions> | <Conditions> | |||
<AudienceRestriction> | <AudienceRestriction> | |||
<Audience>https://saml-sp.example.net</Audience> | <Audience>https://saml-sp.example.net</Audience> | |||
</AudienceRestriction> | </AudienceRestriction> | |||
</Conditions> | </Conditions> | |||
<AuthnStatement AuthnInstant="2010-10-01T20:07:34.371Z"> | <AuthnStatement AuthnInstant="2010-10-01T20:07:34.371Z"> | |||
<AuthnContext> | <AuthnContext> | |||
<AuthnContextClassRef> | <AuthnContextClassRef> | |||
urn:oasis:names:tc:SAML:2.0:ac:classes:X509 | urn:oasis:names:tc:SAML:2.0:ac:classes:X509 | |||
</AuthnContextClassRef> | </AuthnContextClassRef> | |||
</AuthnContext> | </AuthnContext> | |||
</AuthnStatement> | </AuthnStatement> | |||
</Assertion> | </Assertion> | |||
Figure 1: Example SAML 2.0 Assertion | Figure 1: Example SAML 2.0 Assertion | |||
To present the Assertion shown in the previous example as part of an | To present the Assertion shown in the previous example as part of an | |||
access token request, for example, the client might make the | access token request, for example, the client might make the | |||
following HTTPS request (with extra line breaks for display purposes | following HTTPS request (with extra line breaks for display purposes | |||
only): | only): | |||
POST /token.oauth2 HTTP/1.1 | POST /token.oauth2 HTTP/1.1 | |||
Host: authz.example.net | Host: authz.example.net | |||
skipping to change at page 12, line 5 | skipping to change at page 12, line 5 | |||
[RFC6749], and the Security and Privacy Considerations for the OASIS | [RFC6749], and the Security and Privacy Considerations for the OASIS | |||
Security Assertion Markup Language (SAML) V2.0 | Security Assertion Markup Language (SAML) V2.0 | |||
[OASIS.saml-sec-consider-2.0-os] specifications are all applicable to | [OASIS.saml-sec-consider-2.0-os] specifications are all applicable to | |||
this document. | this document. | |||
The specification does not mandate replay protection for the SAML | The specification does not mandate replay protection for the SAML | |||
assertion usage for either the authorization grant or for client | assertion usage for either the authorization grant or for client | |||
authentication. It is an optional feature, which implementations may | authentication. It is an optional feature, which implementations may | |||
employ at their own discretion. | employ at their own discretion. | |||
7. IANA Considerations | 7. Privacy Considerations | |||
7.1. Sub-Namespace Registration of urn:ietf:params:oauth:grant- | A SAML Assertion may contain privacy-sensitive information and, to | |||
prevent disclosure of such information to unintended parties, should | ||||
only be transmitted over encrypted channels, such as TLS. In cases | ||||
where it is desirable to prevent disclosure of certain information | ||||
the client, the Subject and/or individual attributes of a SAML | ||||
Assertion should be encrypted to the authorization server. | ||||
Deployments should determine the minimum amount of information | ||||
necessary to complete the exchange and include only that information | ||||
in an Assertion (typically by limiting what information is included | ||||
in an <AttributeStatement> or omitting it altogether). In some | ||||
cases, the Subject can be a value representing an anonymous or | ||||
pseudonymous user, as described in Section 6.3.1 of the Assertion | ||||
Framework for OAuth 2.0 Client Authentication and Authorization | ||||
Grants [I-D.ietf-oauth-assertions]. | ||||
8. IANA Considerations | ||||
8.1. Sub-Namespace Registration of urn:ietf:params:oauth:grant- | ||||
type:saml2-bearer | type:saml2-bearer | |||
This is a request to IANA to please register the value "grant- | This is a request to IANA to please register the value "grant- | |||
type:saml2-bearer" in the registry urn:ietf:params:oauth established | type:saml2-bearer" in the registry urn:ietf:params:oauth established | |||
in An IETF URN Sub-Namespace for OAuth [RFC6755]. | in An IETF URN Sub-Namespace for OAuth [RFC6755]. | |||
o URN: urn:ietf:params:oauth:grant-type:saml2-bearer | o URN: urn:ietf:params:oauth:grant-type:saml2-bearer | |||
o Common Name: SAML 2.0 Bearer Assertion Grant Type Profile for | o Common Name: SAML 2.0 Bearer Assertion Grant Type Profile for | |||
OAuth 2.0 | OAuth 2.0 | |||
o Change controller: IETF | o Change controller: IETF | |||
o Specification Document: [[this document]] | o Specification Document: [[this document]] | |||
7.2. Sub-Namespace Registration of urn:ietf:params:oauth:client- | 8.2. Sub-Namespace Registration of urn:ietf:params:oauth:client- | |||
assertion-type:saml2-bearer | assertion-type:saml2-bearer | |||
This is a request to IANA to please register the value "client- | This is a request to IANA to please register the value "client- | |||
assertion-type:saml2-bearer" in the registry urn:ietf:params:oauth | assertion-type:saml2-bearer" in the registry urn:ietf:params:oauth | |||
established in An IETF URN Sub-Namespace for OAuth [RFC6755]. | established in An IETF URN Sub-Namespace for OAuth [RFC6755]. | |||
o URN: urn:ietf:params:oauth:client-assertion-type:saml2-bearer | o URN: urn:ietf:params:oauth:client-assertion-type:saml2-bearer | |||
o Common Name: SAML 2.0 Bearer Assertion Profile for OAuth 2.0 | o Common Name: SAML 2.0 Bearer Assertion Profile for OAuth 2.0 | |||
Client Authentication | Client Authentication | |||
o Change controller: IETF | o Change controller: IETF | |||
o Specification Document: [[this document]] | o Specification Document: [[this document]] | |||
8. References | 9. References | |||
8.1. Normative References | 9.1. Normative References | |||
[I-D.ietf-oauth-assertions] | [I-D.ietf-oauth-assertions] | |||
Campbell, B., Mortimore, C., Jones, M., and Y. Goland, | Campbell, B., Mortimore, C., Jones, M., and Y. Goland, | |||
"Assertion Framework for OAuth 2.0 Client Authentication | "Assertion Framework for OAuth 2.0 Client Authentication | |||
and Authorization Grants", draft-ietf-oauth-assertions | and Authorization Grants", draft-ietf-oauth-assertions | |||
(work in progress), April 2014. | (work in progress), July 2014. | |||
[OASIS.saml-core-2.0-os] | [OASIS.saml-core-2.0-os] | |||
Cantor, S., Kemp, J., Philpott, R., and E. Maler, | Cantor, S., Kemp, J., Philpott, R., and E. Maler, | |||
"Assertions and Protocol for the OASIS Security Assertion | "Assertions and Protocol for the OASIS Security Assertion | |||
Markup Language (SAML) V2.0", OASIS Standard saml- | Markup Language (SAML) V2.0", OASIS Standard saml-core- | |||
core-2.0-os, March 2005. | 2.0-os, March 2005. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | |||
Resource Identifier (URI): Generic Syntax", STD 66, RFC | Resource Identifier (URI): Generic Syntax", STD 66, RFC | |||
3986, January 2005. | 3986, January 2005. | |||
[RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | |||
Encodings", RFC 4648, October 2006. | Encodings", RFC 4648, October 2006. | |||
[RFC6749] Hardt, D., "The OAuth 2.0 Authorization Framework", RFC | [RFC6749] Hardt, D., "The OAuth 2.0 Authorization Framework", RFC | |||
6749, October 2012. | 6749, October 2012. | |||
[RFC6755] Campbell, B. and H. Tschofenig, "An IETF URN Sub-Namespace | [RFC6755] Campbell, B. and H. Tschofenig, "An IETF URN Sub-Namespace | |||
for OAuth", RFC 6755, October 2012. | for OAuth", RFC 6755, October 2012. | |||
8.2. Informative References | 9.2. Informative References | |||
[OASIS.saml-deleg-cs] | [OASIS.saml-deleg-cs] | |||
Cantor, S., Ed., "SAML V2.0 Condition for Delegation | Cantor, S., Ed., "SAML V2.0 Condition for Delegation | |||
Restriction", Nov 2009. | Restriction", Nov 2009. | |||
[OASIS.saml-metadata-2.0-os] | [OASIS.saml-metadata-2.0-os] | |||
Cantor, S., Moreh, J., Philpott, R., and E. Maler, | Cantor, S., Moreh, J., Philpott, R., and E. Maler, | |||
"Metadata for the Security Assertion Markup Language | "Metadata for the Security Assertion Markup Language | |||
(SAML) V2.0", OASIS Standard saml-metadata-2.0-os, March | (SAML) V2.0", OASIS Standard saml-metadata-2.0-os, March | |||
2005. | 2005. | |||
[OASIS.saml-profiles-2.0-os] | [OASIS.saml-profiles-2.0-os] | |||
Hughes, J., Cantor, S., Hodges, J., Hirsch, F., Mishra, | Hughes, J., Cantor, S., Hodges, J., Hirsch, F., Mishra, | |||
P., Philpott, R., and E. Maler, "Profiles for the OASIS | P., Philpott, R., and E. Maler, "Profiles for the OASIS | |||
Security Assertion Markup Language (SAML) V2.0", OASIS | Security Assertion Markup Language (SAML) V2.0", OASIS | |||
Standard OASIS.saml-profiles-2.0-os, March 2005. | Standard OASIS.saml-profiles-2.0-os, March 2005. | |||
[OASIS.saml-sec-consider-2.0-os] | [OASIS.saml-sec-consider-2.0-os] | |||
Hirsch, F., Philpott, R., and E. Maler, "Security and | Hirsch, F., Philpott, R., and E. Maler, "Security and | |||
Privacy Considerations for the OASIS Security Markup | Privacy Considerations for the OASIS Security Markup | |||
Language (SAML) V2.0", OASIS Standard saml-sec- | Language (SAML) V2.0", OASIS Standard saml-sec-consider- | |||
consider-2.0-os, March 2005. | 2.0-os, March 2005. | |||
[W3C.REC-html401-19991224] | [W3C.REC-html401-19991224] | |||
Raggett, D., Hors, A., and I. Jacobs, "HTML 4.01 | Raggett, D., Hors, A., and I. Jacobs, "HTML 4.01 | |||
Specification", World Wide Web Consortium Recommendation | Specification", World Wide Web Consortium Recommendation | |||
REC-html401-19991224, December 1999, | REC-html401-19991224, December 1999, | |||
<http://www.w3.org/TR/1999/REC-html401-19991224>. | <http://www.w3.org/TR/1999/REC-html401-19991224>. | |||
Appendix A. Acknowledgements | Appendix A. Acknowledgements | |||
The following people contributed wording and concepts to this | The following people contributed wording and concepts to this | |||
document: Paul Madsen, Patrick Harding, Peter Motykowski, Eran | document: Paul Madsen, Patrick Harding, Peter Motykowski, Eran | |||
Hammer, Peter Saint-Andre, Ian Barnett, Eric Fazendin, Torsten | Hammer, Peter Saint-Andre, Ian Barnett, Eric Fazendin, Torsten | |||
Lodderstedt, Susan Harper, Scott Tomilson, Scott Cantor, Hannes | Lodderstedt, Susan Harper, Scott Tomilson, Scott Cantor, Hannes | |||
Tschofenig, David Waite, Phil Hunt, and Mukesh Bhatnagar. | Tschofenig, David Waite, Phil Hunt, and Mukesh Bhatnagar. | |||
Appendix B. Document History | Appendix B. Document History | |||
[[ to be removed by RFC editor before publication as an RFC ]] | [[ to be removed by RFC editor before publication as an RFC ]] | |||
draft-ietf-oauth-saml2-bearer-21 | ||||
o Added Privacy Considerations section per AD review discussion | ||||
http://www.ietf.org/mail-archive/web/oauth/current/msg13148.html | ||||
and http://www.ietf.org/mail-archive/web/oauth/current/ | ||||
msg13144.html | ||||
draft-ietf-oauth-saml2-bearer-20 | draft-ietf-oauth-saml2-bearer-20 | |||
o Clarified some text around the treatment of subject based on the | o Clarified some text around the treatment of subject based on the | |||
rough rough consensus from the thread staring at http:// | rough rough consensus from the thread staring at | |||
www.ietf.org/mail-archive/web/oauth/current/msg12630.html | http://www.ietf.org/mail-archive/web/oauth/current/msg12630.html | |||
draft-ietf-oauth-saml2-bearer-19 | draft-ietf-oauth-saml2-bearer-19 | |||
o Updated references. | o Updated references. | |||
draft-ietf-oauth-saml2-bearer-18 | draft-ietf-oauth-saml2-bearer-18 | |||
o Clean up language around subject per http://www.ietf.org/mail- | o Clean up language around subject per http://www.ietf.org/mail- | |||
archive/web/oauth/current/msg12254.html. | archive/web/oauth/current/msg12254.html. | |||
o As suggested in http://www.ietf.org/mail-archive/web/oauth/current | o As suggested in http://www.ietf.org/mail- | |||
/msg12253.html stated that "In the absence of an application | archive/web/oauth/current/msg12253.html stated that "In the | |||
profile specifying otherwise, compliant applications MUST compare | absence of an application profile specifying otherwise, compliant | |||
the audience/issuer values using the Simple String Comparison | applications MUST compare the audience/issuer values using the | |||
method defined in Section 6.2.1 of RFC 3986." | Simple String Comparison method defined in Section 6.2.1 of RFC | |||
3986." | ||||
o Clarify the potentially confusing language about the AS confirming | o Clarify the potentially confusing language about the AS confirming | |||
the assertion http://www.ietf.org/mail-archive/web/oauth/current/ | the assertion http://www.ietf.org/mail-archive/web/oauth/current/ | |||
msg12255.html. | msg12255.html. | |||
o Combine the two items about AuthnStatement and drop the word | o Combine the two items about AuthnStatement and drop the word | |||
presenter as discussed in http://www.ietf.org/mail-archive/web/ | presenter as discussed in http://www.ietf.org/mail- | |||
oauth/current/msg12257.html. | archive/web/oauth/current/msg12257.html. | |||
o Added one-time use, maximum lifetime, and specific subject and | o Added one-time use, maximum lifetime, and specific subject and | |||
attribute requirements to Interoperability Considerations based on | attribute requirements to Interoperability Considerations based on | |||
http://www.ietf.org/mail-archive/web/oauth/current/msg12252.html. | http://www.ietf.org/mail-archive/web/oauth/current/msg12252.html. | |||
o Reword security considerations and mention that replay protection | o Reword security considerations and mention that replay protection | |||
is not mandated based on http://www.ietf.org/mail-archive/web/ | is not mandated based on http://www.ietf.org/mail- | |||
oauth/current/msg12259.html. | archive/web/oauth/current/msg12259.html. | |||
draft-ietf-oauth-saml2-bearer-17 | draft-ietf-oauth-saml2-bearer-17 | |||
o Stated that issuer and audience values SHOULD be compared using | o Stated that issuer and audience values SHOULD be compared using | |||
the Simple String Comparison method defined in Section 6.2.1 of | the Simple String Comparison method defined in Section 6.2.1 of | |||
RFC 3986 unless otherwise specified by the application. | RFC 3986 unless otherwise specified by the application. | |||
draft-ietf-oauth-saml2-bearer-16 | draft-ietf-oauth-saml2-bearer-16 | |||
o Changed title from "SAML 2.0 Bearer Assertion Profiles for OAuth | o Changed title from "SAML 2.0 Bearer Assertion Profiles for OAuth | |||
skipping to change at page 16, line 5 | skipping to change at page 16, line 22 | |||
to SAML Metadata. | to SAML Metadata. | |||
o Added more explanatory context to the example in Section 4. | o Added more explanatory context to the example in Section 4. | |||
draft-ietf-oauth-saml2-bearer-15 | draft-ietf-oauth-saml2-bearer-15 | |||
o Reference RFC 6749 and RFC 6755. | o Reference RFC 6749 and RFC 6755. | |||
o Update draft-ietf-oauth-assertions reference to -06. | o Update draft-ietf-oauth-assertions reference to -06. | |||
o Remove extraneous word per http://www.ietf.org/mail-archive/web/ | o Remove extraneous word per http://www.ietf.org/mail- | |||
oauth/current/msg10055.html | archive/web/oauth/current/msg10055.html | |||
draft-ietf-oauth-saml2-bearer-14 | draft-ietf-oauth-saml2-bearer-14 | |||
o Add more text to intro explaining that an assertion grant type can | o Add more text to intro explaining that an assertion grant type can | |||
be used with or without client authentication/identification and | be used with or without client authentication/identification and | |||
that client assertion authentication is nothing more than an | that client assertion authentication is nothing more than an | |||
alternative way for a client to authenticate to the token endpoint | alternative way for a client to authenticate to the token endpoint | |||
o Add examples to Sections 2.1 and 2.2 | o Add examples to Sections 2.1 and 2.2 | |||
skipping to change at page 16, line 46 | skipping to change at page 17, line 14 | |||
o updated reference to draft-ietf-oauth-v2 from -25 to -26 and | o updated reference to draft-ietf-oauth-v2 from -25 to -26 and | |||
draft-ietf-oauth-assertions from -02 to -03 | draft-ietf-oauth-assertions from -02 to -03 | |||
draft-ietf-oauth-saml2-bearer-11 | draft-ietf-oauth-saml2-bearer-11 | |||
o Removed text about limited lifetime access tokens and the SHOULD | o Removed text about limited lifetime access tokens and the SHOULD | |||
NOT on issuing refresh tokens. The text was moved to draft-ietf- | NOT on issuing refresh tokens. The text was moved to draft-ietf- | |||
oauth-assertions-02 and somewhat modified per http://www.ietf.org/ | oauth-assertions-02 and somewhat modified per http://www.ietf.org/ | |||
mail-archive/web/oauth/current/msg08298.html. | mail-archive/web/oauth/current/msg08298.html. | |||
o Fixed typo/missing word per http://www.ietf.org/mail-archive/web/ | o Fixed typo/missing word per http://www.ietf.org/mail- | |||
oauth/current/msg08733.html. | archive/web/oauth/current/msg08733.html. | |||
o Added Terminology section. | o Added Terminology section. | |||
draft-ietf-oauth-saml2-bearer-10 | draft-ietf-oauth-saml2-bearer-10 | |||
o fix a spelling mistake | o fix a spelling mistake | |||
draft-ietf-oauth-saml2-bearer-09 | draft-ietf-oauth-saml2-bearer-09 | |||
o Attempt to address an ambiguity around validation requirements | o Attempt to address an ambiguity around validation requirements | |||
when the Conditions element contain a NotOnOrAfter and | when the Conditions element contain a NotOnOrAfter and | |||
SubjectConfirmation/SubjectConfirmationData does too. Basically | SubjectConfirmation/SubjectConfirmationData does too. Basically | |||
it needs to have at least one bearer SubjectConfirmation element | it needs to have at least one bearer SubjectConfirmation element | |||
but that element can omit SubjectConfirmationData, if Conditions | but that element can omit SubjectConfirmationData, if Conditions | |||
has an expiry on it. Otherwise, a valid SubjectConfirmation must | has an expiry on it. Otherwise, a valid SubjectConfirmation must | |||
skipping to change at page 17, line 46 | skipping to change at page 18, line 14 | |||
o Fix three typos NamseID->NameID and (2x) Namspace->Namespace | o Fix three typos NamseID->NameID and (2x) Namspace->Namespace | |||
draft-ietf-oauth-saml2-bearer-05 | draft-ietf-oauth-saml2-bearer-05 | |||
o Allow for subject confirmation data to be optional when Conditions | o Allow for subject confirmation data to be optional when Conditions | |||
contain audience and NotOnOrAfter | contain audience and NotOnOrAfter | |||
o Rework most of the spec to profile draft-ietf-oauth-assertions for | o Rework most of the spec to profile draft-ietf-oauth-assertions for | |||
both authn and authz including (but not limited to): | both authn and authz including (but not limited to): | |||
* remove requirement for issuer to be urn:oasis:names:tc:SAML:2.0 | * remove requirement for issuer to be | |||
:nameid-format:entity | urn:oasis:names:tc:SAML:2.0:nameid-format:entity | |||
* change wording on Subject requirements | * change wording on Subject requirements | |||
o using a MAY, explicitly say that the Audience can be token | o using a MAY, explicitly say that the Audience can be token | |||
endpoint URL of the authorization server | endpoint URL of the authorization server | |||
o Change title to be more generic (allowing for client authn too) | o Change title to be more generic (allowing for client authn too) | |||
o added client authentication to the abstract | o added client authentication to the abstract | |||
o register and use urn:ietf:params:oauth:grant-type:saml2-bearer for | o register and use urn:ietf:params:oauth:grant-type:saml2-bearer for | |||
grant type rather than http://oauth.net/grant_type/saml/2.0/bearer | grant type rather than http://oauth.net/grant_type/saml/2.0/bearer | |||
o register urn:ietf:params:oauth:client-assertion-type:saml2-bearer | o register urn:ietf:params:oauth:client-assertion-type:saml2-bearer | |||
o remove scope parameter as it is defined in http://tools.ietf.org/ | o remove scope parameter as it is defined in | |||
html/draft-ietf-oauth-assertions | http://tools.ietf.org/html/draft-ietf-oauth-assertions | |||
o remove assertion param registration because it [should] be in | o remove assertion param registration because it [should] be in | |||
http://tools.ietf.org/html/draft-ietf-oauth-assertions | http://tools.ietf.org/html/draft-ietf-oauth-assertions | |||
o fix typo(s) and update/add references | o fix typo(s) and update/add references | |||
draft-ietf-oauth-saml2-bearer-04 | draft-ietf-oauth-saml2-bearer-04 | |||
o Changed the grant_type URI from "http://oauth.net/grant_type/ | o Changed the grant_type URI from | |||
assertion/saml/2.0/bearer" to "http://oauth.net/grant_type/saml/ | "http://oauth.net/grant_type/assertion/saml/2.0/bearer" to | |||
2.0/bearer" - dropping the word assertion from the path. Recent | "http://oauth.net/grant_type/saml/2.0/bearer" - dropping the word | |||
versions of draft-ietf-oauth-v2 no longer refer to extension | assertion from the path. Recent versions of draft-ietf-oauth-v2 | |||
grants using the word assertion so this URI is more reflective of | no longer refer to extension grants using the word assertion so | |||
that. It also more closely aligns with the grant type URI in | this URI is more reflective of that. It also more closely aligns | |||
draft-jones-oauth-jwt-bearer-00 which is "http://oauth.net/ | with the grant type URI in draft-jones-oauth-jwt-bearer-00 which | |||
grant_type/jwt/1.0/bearer". | is "http://oauth.net/grant_type/jwt/1.0/bearer". | |||
o Added "case sensitive" to scope definition to align with draft- | o Added "case sensitive" to scope definition to align with draft- | |||
ietf-oauth-v2-15/16. | ietf-oauth-v2-15/16. | |||
o Updated to reference draft-ietf-oauth-v2-16 | o Updated to reference draft-ietf-oauth-v2-16 | |||
draft-ietf-oauth-saml2-bearer-03 | draft-ietf-oauth-saml2-bearer-03 | |||
o Cleanup of some editorial issues. | o Cleanup of some editorial issues. | |||
skipping to change at page 19, line 41 | skipping to change at page 20, line 5 | |||
o Added Parameter Registration Request for "assertion" to IANA | o Added Parameter Registration Request for "assertion" to IANA | |||
Considerations. | Considerations. | |||
o Changed document name to draft-ietf-oauth-saml2-bearer in | o Changed document name to draft-ietf-oauth-saml2-bearer in | |||
anticipation of becoming an OAUTH WG item. | anticipation of becoming an OAUTH WG item. | |||
o Attempt to move the entire definition of the 'assertion' parameter | o Attempt to move the entire definition of the 'assertion' parameter | |||
into this draft (it will no longer be defined in OAuth 2 Protocol | into this draft (it will no longer be defined in OAuth 2 Protocol | |||
Framework). | Framework). | |||
draft-campbell-oauth-saml-01 | ||||
o Updated to reference draft-ietf-oauth-v2-11 and reflect changes | o Updated to reference draft-ietf-oauth-v2-11 and reflect changes | |||
from -10 to -11. | from -10 to -11. | |||
o Updated examples. | o Updated examples. | |||
o Relaxed processing rules to allow for more than one | o Relaxed processing rules to allow for more than one | |||
SubjectConfirmation element. | SubjectConfirmation element. | |||
o Removed the 'MUST NOT contain a NotBefore attribute' on | o Removed the 'MUST NOT contain a NotBefore attribute' on | |||
SubjectConfirmationData. | SubjectConfirmationData. | |||
skipping to change at page 20, line 18 | skipping to change at page 20, line 29 | |||
o Added some wording about identifying the client when the subject | o Added some wording about identifying the client when the subject | |||
hasn't directly authenticated including an informative reference | hasn't directly authenticated including an informative reference | |||
to SAML V2.0 Condition for Delegation Restriction. | to SAML V2.0 Condition for Delegation Restriction. | |||
o Added a few examples to the language about verifying that the | o Added a few examples to the language about verifying that the | |||
Assertion is valid in all other respects. | Assertion is valid in all other respects. | |||
o Added some wording to the introduction about the similarities to | o Added some wording to the introduction about the similarities to | |||
Web SSO in the format and processing rules | Web SSO in the format and processing rules | |||
o Changed the grant_type (was assertion_type) URI from http:// | o Changed the grant_type (was assertion_type) URI from | |||
oauth.net/assertion_type/saml/2.0/bearer to http://oauth.net/ | http://oauth.net/assertion_type/saml/2.0/bearer to | |||
grant_type/assertion/saml/2.0/bearer | http://oauth.net/grant_type/assertion/saml/2.0/bearer | |||
o Changed title to include "Grant Type" in it. | o Changed title to include "Grant Type" in it. | |||
o Editorial updates based on feedback from the WG and others | o Editorial updates based on feedback from the WG and others | |||
(including capitalization of Assertion when referring to SAML). | (including capitalization of Assertion when referring to SAML). | |||
draft-campbell-oauth-saml-00 | draft-campbell-oauth-saml-00 | |||
o Initial I-D | o Initial I-D | |||
End of changes. 33 change blocks. | ||||
88 lines changed or deleted | 113 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |