There's also this means of providing identifying instance information for a 
single client registration:

http://tools.ietf.org/html/draft-richer-oauth-instance-00

This is solving a different need and can be used in tandem with, or in lieu of, 
the dynamic registration per-client, depending on your use case. Sometimes 
you're happy with just one registered client_id but want to track multiple 
copies of it getting tokens -- that's what this extension is for.

 -- Justin

On Oct 20, 2012, at 9:37 PM, Nat Sakimura wrote:

On the instance identification purpose, it may be interesting to generate a 
key-pair and register the public key out of it to the server, similar to what 
we do in the case of Self-Issued OP in OpenID Connect.

So, the app will have the client_id, which is pre-provisioned to the same app 
as a "class", and the app, when first registering itself to the server will 
generate the "instance id" which is tied to the secret key that is typically 
stored in key-chain or similar devices.

Note that the key generation has to be done for each server or server groups as 
otherwise it will become trivial to track the user across.

Nat

On Sat, Oct 20, 2012 at 3:35 AM, Phil Hunt 
<phil.h...@oracle.com<mailto:phil.h...@oracle.com>> wrote:
I agree with your assessment here.

Phil

@independentid
www.independentid.com<http://www.independentid.com/>
phil.h...@oracle.com<mailto:phil.h...@oracle.com>





On 2012-10-19, at 11:12 AM, John Bradley wrote:

It would be nice if software signing could work, however verifying that over a 
network connection without some sort of OS level TPM seems overly ambitious.

We were not trying to solve that problem with connect, only find a way that we 
could provision a secret for native apps.

Certainly the registration token can be stolen and faked by a rogue app.

However with a good app it lets you get a unique client secret for the app or 
register a public key (something perhaps useful for Proof of possession tokens 
as well)

For web server clients this is not a big deal because registration is a one tie 
thing.

For native apps on phones etc having every one with the same clientID and 
password is not a good thing.

John B.


On 2012-10-19, at 2:39 PM, Phil Hunt 
<phil.h...@oracle.com<mailto:phil.h...@oracle.com>> wrote:

Consider that the issues comes from 2 angles:
1. The desire to distinguish between instances of a client app (e.g. on mobile 
phones)
2. The desire for the client to register with particular instances of a 
resource service.

The objective:  to establish a unique credential that binds a particular client 
instance (or set of clients) with a particular resource service provider.

I note that, per John's suggestion, this is something like what OpenID Connect 
attempted to solve with their dynamic registration draft.

As further input, during the review of the OAuth Threat Model, there was 
significant inquires and discussion about how to assess the legitimacy or 
authenticity of a piece of client software. Though we didn't solve it, there 
was a lot of requests for finding a way to authenticate client software as 
simply being the one made by its developer.

Therefore, I think there is requirement to be able to authenticate software (at 
some level) that is part of the dynamic registration process.

I think there is a few of steps in dynamic registration.
1. A method to authenticate the software. Is it signed by its publisher?  If 
the resource being accessed is developed by a single publisher, has the client 
been registered with the publisher? Hypothetical examples of this might be 
clients designed to work with MS Exchange, or Oracle CRM.
2. Optionally establishing a means to distinguish one client instance from 
another.
3. Dynamically issuing the client with a credential (which may or may not be 
instance specific) to use with a particular instance of a resource 
authorization server.

Regarding step 1, I note that in the case OpenID Connect, there is no single 
place to even register a client as there is with proprietary APIs. Not sure if 
software signing can work here. The same problem will emerge with any standards 
based API (e.g. such as SCIM).  This is why I think dynamic registration is of 
broad interest in the standards community beyond just OpenID.

Phil

@independentid
www.independentid.com<http://www.independentid.com/>
phil.h...@oracle.com<mailto:phil.h...@oracle.com>





On 2012-10-19, at 9:40 AM, George Fletcher wrote:

I think it's an interesting idea... I'm just not sure how to tie the dynamic 
client registration to a verified user email address. To get a verified email 
address, most OAuth2 flows require the client_id to be already provisioned.

I do agree that from the AS/OP perspective, we don't want to allow unlimited 
client registrations. This could be it's own form of DoS attack. I suppose if 
the client has a verifiable token containing the user attributes, that could be 
passed optionally to the dynamic client registration flow. How the client got 
the verifiable token could be left out of scope.

There are probably other ways to protect against abuse and they will likely be 
different from OP to OP for a while, until some best practices are established.

Thanks,
George

On 10/19/12 12:00 PM, Pedro Felix wrote:
And what if the client instance is also connected to some verifiable user 
attribute, such as an email?
Is this a bad idea?

Pedro

On Fri, Oct 19, 2012 at 4:24 PM, John Bradley 
<ve7...@ve7jtb.com<mailto:ve7...@ve7jtb.com>> wrote:
The client instance registration was something that we discussed and put into 
the openID Connect dynamic client registration but has not yet been put back 
into the UMA draft.

http://openid.bitbucket.org/openid-connect-registration-1_0.html

The basic idea is that you can bake a access token into client code and that 
client then uses that to get a unique clientID and secret/register public key.

There was a long discussion about this at a IIW about a year ago.

In some of the native apps projects I am looking at that are not openID connect 
related we are looking at doing the same thing to differentiate instances of 
clients.

John B.



On 2012-10-19, at 11:47 AM, Pedro Felix 
<pmhsfe...@gmail.com<mailto:pmhsfe...@gmail.com>> wrote:

Thanks for the response.

I know that this area is work in progress. However, I've looked into 
http://tools.ietf.org/html/draft-ietf-oauth-dyn-reg-00 and didn't found much 
about this subject.
What is the best place to follow this discussion? This mailing list?

Thanks
Pedro

On Thu, Oct 18, 2012 at 5:59 PM, Phil Hunt 
<phil.h...@oracle.com<mailto:phil.h...@oracle.com>> wrote:
Pedro,

AFAIK this is still a TODO within the current charter.

Phil

@independentid
www.independentid.com<http://www.independentid.com/>
phil.h...@oracle.com<mailto:phil.h...@oracle.com>





On 2012-10-18, at 9:06 AM, Pedro Felix wrote:

> Hi,
>
> Where can I find more information about the dynamic registration of client 
> application instances?
> The idea is that each installed application instance has a different id, 
> eventually related to the "general" application id.
>
> It also would be interesting if this instance id was the result of an 
> activation process, where the instance is attached to a device or to an user 
> (e.g. confimed email address).
>
> Thanks
> Pedro
>
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org<mailto:OAuth@ietf.org>
> https://www.ietf.org/mailman/listinfo/oauth


_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth





_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth


_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth

_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth



_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth




--
Nat Sakimura (=nat)
Chairman, OpenID Foundation
http://nat.sakimura.org/
@_nat_en

_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth

_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to