I2 RP Profile Claim Processing

From OSIS Open Source Identity Systems

Jump to: navigation, search

This section deals with community understanding of what action an RP should take, in the case where they are passed a claim with the characteristics listed below.

* I2-Barcelona         * I2 Relying Party Profiles           * I2 RP Profile Claim Processing     *I2 RP Profile Token Validation

Contents

Interoperability - Active

Description Acceptable Not Acceptable Examples
Unexpected Multi-Valued Claim: RP receives a token with a claim that contains multiple values, when the RP was expecting a single value fail with actionable message ignoring without user notification or failure Unexpected Multi-valued Claim Test
Expected Multi-Valued Claim: RP receives a token with a claim that contains multiple values, when the RP was expecting a multiple values accept failure Expected Multi-valued Claim Test
Unasked-for Claim Returned: RP receives a claim which was not requested by the RP ignore or retry ignoring case failure none yet
Claim contains HTML Entities: RP receives a claim which contains embedded html (eg. <script>) escape HTML Entities at time of token processing execution of html code HTML Entity Test
Claim contains Database Injection: RP receives a claim which contains embedded database injection code escape quotation marks which could otherwise cause an attacker to alter database statements. execution of malicious code none yet

Interoperability - Deferred

Description Acceptable Not Acceptable Examples
Empty Required Claim: IdP returns an empty value for a required claim accept or fail with actionable message exception with no actionable message none yet
Claim contains Database Injection: RP receives a claim which contains embedded database injection code escape quotation marks which could otherwise cause an attacker to alter database statements. execution of malicious code none yet

Component Support

Legend: Yes = supported; No = not supported; ? = unknown; tbd = support possible near term; some = some features supported

Component/Profile Unexpected Multi-valued Claim Expected Multi-valued Claim Unasked-for Claim Returned Claim contains HTML Entities Claim contains Database Injection
FriendsWithCards
MS Age STS
LiveID Login
xmldap.org
Higgins RP
IBM
IC-Ruby
IC-Java
FuGen RP
NetMesh RP
Pamela Project tbd tbd tbd yes yes
Ping Identity
CA SiteMinder RP Yes Yes Yes Yes Yes
Bandit Trac tbd tbd tbd tbd yes
Oracle RP Yes Yes Yes Yes TBD
Bandit Podcasts PW RP WordPress
IC-PHP
IC-C
Siemens DirX Access

Original Notes

Seems to be two issues here... what is in the token, and what the RP should do with it.

  • The handling of claims with multivalued attributes appears not to be fully specified (Bob)
  • Some RPs required an exact match of required claims and presented claims; other RPs matched if required claims were a subset of presented claims. (Bob)
    • (NI) The subset seems right to me. The user has chosen to provide extra information, so I think the RP should assume she understands the privacy consequences. Furthermore, this should help keep the number of cards a user has to manage smaller. (Eric)
  • Some IDPs generated tokens with claims not requested by the RP; the consensus was that IDPs should not generate claims which do not appear in the RP's list of required or optional claims, because of privacy concerns. (Bob)
    • NI) But what if the user asked to have extra claims included? Does a user have this control or doesn't she? See Law 1. (Eric)
  • Introduction behavior is not well-specified; when an RP encounters a token from a previously unseen IDP which is not in an administered trust list, no standard behavior is defined. Most RP failure modes provide little information to an administrator who might want to add the IDP to a trust list. (Bob)
  • Some RPs rejected assertions because of issues with synchronizing clocks between IDPs and RPs. (Bob)
  • "Empty Claims" from Managed Identity Providers ‑‑ how do we get around the static nature of the 'supported claims' in a managed card? (Pam)
    • need an enhanced claim type, this has already come up in the WS‑Federation TC in OASIS (Tony)
  • Relying Party "Faults" ‑‑ do I need to support these? ‑‑ see section 6.1 in the Identity Selector Interoperability Profile v1.0 (Pam)