<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Hi,
<div class=""><br class="">
</div>
<div class="">Meanwhile, we’ve signed the IPR paperwork, so I’m re-submitting my feedback.</div>
<div class="">Kind regards,</div>
<div class=""><br class="">
</div>
<div class="">Jaap<br class="">
<div><br class="">
<blockquote type="cite" class="">
<div class="">Begin forwarded message:</div>
<br class="Apple-interchange-newline">
<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;" class="">
<span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);" class=""><b class="">From:
</b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;" class="">Jaap Francke <<a href="mailto:jaap.francke@iwelcome.com" class="">jaap.francke@iwelcome.com</a>><br class="">
</span></div>
<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;" class="">
<span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);" class=""><b class="">Subject:
</b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;" class=""><b class="">Usage of scopes and purposes when requesting verified claims</b><br class="">
</span></div>
<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;" class="">
<span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);" class=""><b class="">Date:
</b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;" class="">31 March 2020 at 18:01:32 CEST<br class="">
</span></div>
<div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;" class="">
<span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);" class=""><b class="">To:
</b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;" class=""><a href="mailto:openid-specs-ekyc-ida@lists.openid.net" class="">openid-specs-ekyc-ida@lists.openid.net</a><br class="">
</span></div>
<br class="">
<div class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div class="">Hi everybody,</div>
<div class=""><br class="">
</div>
<div class="">I’m new on this mailing list, thanks for letting me in ;-).</div>
<div class="">I have potentially missed previous feedback or conversation around the Identity Assurance specification, but that shouldn’t stop me from sharing my views.</div>
<div class=""><br class="">
</div>
<div class="">As a Product Manager at iWelcome, I am very interested in Identity Assurance. I’ve been involved in a number of projects where verified claims are a key element to the identity management solution. In the Netherlands, for example, consumer banks
 are using the IDIN schema to act as a claim provider for identity proofing purposes. </div>
<div class="">This is beneficial to Insurance companies that can sell certain products only to proven identities.</div>
<div class=""><br class="">
</div>
<div class="">My feedback on the specs is below, I’m interested to see your responses, thanks.</div>
<div class=""><br class="">
</div>
<div class="">Kind regards</div>
<div class=""><br class="">
</div>
<div class="">Jaap Francke</div>
<div class="">CIAM Product manager @ iWelcome.</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">———</div>
<div class=""><br class="">
</div>
<div class=""><a href="https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html" class="">https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html</a></div>
<div class="">
<div class=""><br class="">
</div>
<div class="">The "OIDC for identity Assurance” specs introduce a number of claims, in addition to the ones specificied by OIDC core.</div>
<div class="">In OIDC Core, there are 2 mechanisms to request claims:</div>
<div class="">- one is by usage of OAuth-scopes, (section 5.4 of Core spec)</div>
<div class="">- one by usage of the “claims” parameter in the request. (section 5.5 of Core spec)</div>
<div class="">Section 5 of the OIDC—identity-assurance specs indicate the usage of the claims pararameter. This may suggest it’s the only mechanism to be used in the context of Identity Assurance.</div>
<div class="">My view is that also the ’scope’ mechanism should be supported and may even be preferred for certain use cases.</div>
<div class=""><i class=""><b class="">Please enhance the specification to be more explicit about usage of scopes as a means to request verified claims.</b></i></div>
<div class=""><br class="">
</div>
<div class="" style="orphans: 2; widows: 2;">Usage of ’scope’ to request verified claims makes sense to me because in a typical “identity landscape” the requested claims do not vary on a request-by-request basis, but instead are a reflection of an RP’s functionality
 which can be rather static. By pre-defining/configuring scopes at the OP (potentially in terms of ’essential’, ’trust_framework’, etc..), the scope is essentially a profile of the claim request. This would not only simplify the protocol implementation both
 at the RP and OP side, but it would also make it easier for the OP to make the authorisation decision whether or not the RP will be granted the requested verified claims. '<span class="" style="background-color: rgb(255, 255, 255);"><font color="#222222" face="Noto Sans, Arial, Helvetica, sans-serif" class=""><span class="" style="font-size: 14px;">It
 is at the discretion of the OP to decide whether the requested verification data is provided to the RP.</span><span class="" style="font-size: 14px;">’</span><span class="" style="font-size: 14px;"> Making this decision is much easier when a request includes
 a scope as a reference to a predefined profile of requested end-user claims and associated verification data.
<i class=""><b class="">My suggestion is to consider including such a mechanism in the specifications.</b></i></span></font></span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="background-color: rgb(255, 255, 255);"><font color="#222222" face="Noto Sans, Arial, Helvetica, sans-serif" class=""><span class="" style="font-size: 14px;"><br class="">
</span></font></span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="background-color: rgb(255, 255, 255);"><font color="#222222" face="Noto Sans, Arial, Helvetica, sans-serif" class=""><span class="" style="font-size: 14px;">My second observation is about the
 optional ‘purpose’ parameter in a claims request. The specs state that </span></font></span><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);">the
 OP MUST display this purpose in the respective user consent screen(s) in order to inform the user about the designated use of the data to be transferred or the authorization to be approved. If the parameter </span><code class="" style="background-color: rgb(249, 249, 249); font-family: "Roboto Mono", monospace; font-size: 13.3px; color: rgb(34, 34, 34); font-variant-ligatures: normal;">purpose</code><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);"> is
 not present in the request, the OP MAY display a value that was pre-configured for the respective RP.’ </span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);">This part of the specification
 assumes or seems to imply that the user gets a consent screen every time that verified data is requested. I think that this is not realistic:</span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);">- it is common practice
 that certain consents are included in a Privacy Policy (PP) and/or Terms of Service (ToS). The user gives his consent once and the consent is persisted at the OP for future purposes.</span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);">- if not in PP or ToS,
 a consent screen may be presented only ‘once’ and the user’s consent is taken to be valid for the next 6 months (as an example)</span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);">- in some situations there
 are other legal grounds/reasons/purposes to request the claims and verification data. Besides ‘consent’, the European GDPR indicates other legal grounds (contract, vital interest, legal obligation, ..). When an RP asks for a verified claim, it may do so based
 on a legal obligation and the user’s consent would not be needed.</span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);">- Privacy regulations
 aim at situations where personal data is exchanged between legal entities (data controllers, data processors). From an IT perspective, the OP and the RP may be operated by the same entity (for example an Insurance company as data controller that is both the
 data controller for the OP and various RPs) so consent would not apply at the moment of requesting the claim. The consent should already have been given at the moment the personal data was provided to the OP.</span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);"><b class=""><i class="">My
 proposal would be that the ‘purpose’ could be a string (as per current specification) or a reference to a ‘purpose’ that has already been established somewhere.</i></b> This approach makes it easier for the OP to make the decision to provide the requested
 data or not.</span></div>
<div class="" style="orphans: 2; widows: 2;"><span class="" style="color: rgb(34, 34, 34); font-family: "Noto Sans", Arial, Helvetica, sans-serif; font-size: 14px; font-variant-ligatures: normal; background-color: rgb(255, 255, 255);"><br class="">
</span></div>
<div class="" style="orphans: 2; widows: 2;"><font color="#222222" face="Noto Sans, Arial, Helvetica, sans-serif" class=""><span class="" style="font-size: 14px; background-color: rgb(255, 255, 255);"><b class=""><i class="">Furthermore, it could be considered
 to extend the list of verification methods with the ones defined by NISTIR 8112.</i></b></span></font></div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</body>
</html>