<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>It sounds like your are saying that the client in the user device has permission to sign with the user’s private key?</p><p class=MsoNormal>That would imply to me that the client was the user?</p><p class=MsoNormal>Not sure how OpenID connect fits into the picture in that case.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>If the OP asks the user to sign something for it, then I presume that would be part of the consent process?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>It always concerns me from a security perspective when services that are not part of the user are allowed to sign something as the user. That is impersonation, which seems to be absent in the OpenID specs, although I am not fully conversant with all of them. I know that other implementers have added impersonation to otherwise OIDC implementations even tho it seems to be missing from the specs.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>thx ..tom</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:openid-specs-ab@lists.openid.net">George Fletcher via Openid-specs-ab</a><br><b>Sent: </b>Thursday, March 14, 2019 12:08 PM<br><b>To: </b><a href="mailto:openid-specs-ab@lists.openid.net">openid-specs-ab@lists.openid.net</a><br><b>Cc: </b><a href="mailto:gffletch@aol.com">George Fletcher</a>; <a href="mailto:hga@verizonmedia.com">hga@verizonmedia.com</a><br><b>Subject: </b>[Openid-specs-ab] ID Tokens and the client_credentials flow</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Hi,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>We ran into a very interesting use case that OpenID Connect and OAuth2 </p><p class=MsoNormal>don't really address and I'm looking for input on the best mechanism to </p><p class=MsoNormal>enable.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Specifically, we have a way to issue user specific x.509 certificates. </p><p class=MsoNormal>Given that the certificate references a user, we can use the </p><p class=MsoNormal>client_credentials flow (with MTLS, private_key_jwt, etc) to obtain an </p><p class=MsoNormal>access token for the user without involving a browser or UI flows. </p><p class=MsoNormal>However, there are some contexts where we'd like to get back an id_token </p><p class=MsoNormal>along with the access_token.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>One thought is to use the concept defined by the OpenID Connect spec and </p><p class=MsoNormal>that is specify a scope of "openid" in the client_credentials flow to </p><p class=MsoNormal>indicate that an id_token should be returned in addition to the </p><p class=MsoNormal>access_token.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Other thoughts for how best to do this in a way that maintains the </p><p class=MsoNormal>spirit of the specs?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks,</p><p class=MsoNormal>George</p><p class=MsoNormal>_______________________________________________</p><p class=MsoNormal>Openid-specs-ab mailing list</p><p class=MsoNormal>Openid-specs-ab@lists.openid.net</p><p class=MsoNormal>http://lists.openid.net/mailman/listinfo/openid-specs-ab</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>