[Openid-specs-mobile-profile] How to generate the "sub" in Mobile Connect
ve7jtb at ve7jtb.com
Tue Apr 21 17:39:13 UTC 2015
This would require that RP not consider the issuer part of the identifier.
That has significant security implications.
Nothing stops a non MNO openID connect provider from producing a colliding PCR.
The SP would be required to special case all there security logic for Mobile Profile operators, and know who the operators are.
This would allow any operator to compromise the security of any other operators accounts. Probably a non starter for something claiming to be secure.
The WG discussed this and decided that portability of the identity would be out of scope.
We can have a mechanism to allow users to migrate from one PCR/issuer to another, but even that is complicated if we want to prevent correlation.
One way to do that would be to have globally unique PCR and when a SP receives a unknown iss/sub pair it would look to see if the sub exists for a registered account and if it is found, then make a API call to the old issuer to see if the new issuer is now authoritative for that, and if it is update the account record with the new issuer.
That is the only safe way to do something like this. That prevents the donor operator from having there security arbitrarily compromised by any other operator.
It also stops people from crating SP software that ignores issuers, and causes general security problems with non MNO IDP.
It also allows MNO with existing SP’s and subject identifiers to be able to continue using them.
PS you should not use the client_id when generating the PCR, that will change over time and cause untold havoc.
The Connect spec has a way to generate a Pairwise identifier for a user. We should stick to that.
> On Apr 21, 2015, at 1:11 PM, GONZALO FERNANDEZ RODRIGUEZ <gonzalo.fernandezrodriguez at telefonica.com> wrote:
> Hi Guys,
> I will not be able to attend to our call tomorrow, however I would like to add this topic to the tomorrow's call in order to be discussed (Jorg is aware of it, because it is an action point from our calls in the GSMA Working Group).
> As all we know, the MSISDN is something susceptible to be ported from an operator to another, and this can have a big impact in the Service Providers that already have a "sub" to recognise the owner of this MSISDN.
> In the GSMA Working Group we are talking about the need to migrate the sub (aka PCR: Pseudonymous Customer Reference) in case of portability. To do that, we need that the PCR is not tied to the MSISDN but to a Mobile Connect identifier that must be unique across all the operators.
> As per the OpenID Connect spec, the Service Providers should check the pair iss+sub to identify the users, however this wouldn't be possible in Mobile Connect, because we aim to identify the same user irrrespective of which is the current Identity Provider which the user belongs to. The conclusion is that we need to generates PCR with the follow constraints:
> The PCR must be unique across all the operators.
> The PCR should be created only once per MSISDN and to maintain it all the portabilities long.
> To achieve that, one possibility could be to have a central database, however this could be a poor solution due to scalability and additional integrations between the OIDC providers and this common database.
> Another possibility could be that PCR's are created by the MNO where the user is registered in the Mobile Connect for the first time. As this solution implies to create the PCR in a distributed way, it need to agree how to do it in order to avoid collisions, so we have proposed the next mechanism to create this PCR's:
> Generate a PCR like: Hash(iss+client_id+user_id)
> The user_id would be up to each operator
> The client_id (Service Provider identifier) should be agreed among all the operators, because it would be necessary when the user is ported to know which PCR is related with which Service Provider.
> The iss avoid collisions among operators
> The Hash is something to obfuscate
> This PCR should be deleted in the event that the MSISDN is recycled.
> It would be very useful to have comments on this working group, so I would encourage you to discuss this topic to give feedback to the GSMA WG.
> Thanks in advance, and sorry to not be able to attend the call tomorrow.
> Este mensaje y sus adjuntos se dirigen exclusivamente a su destinatario, puede contener información privilegiada o confidencial y es para uso exclusivo de la persona o entidad de destino. Si no es usted. el destinatario indicado, queda notificado de que la lectura, utilización, divulgación y/o copia sin autorización puede estar prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción.
> The information contained in this transmission is privileged and confidential information intended only for the use of the individual or entity named above. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this transmission in error, do not read it. Please immediately reply to the sender that you have received this communication in error and then delete it.
> Esta mensagem e seus anexos se dirigem exclusivamente ao seu destinatário, pode conter informação privilegiada ou confidencial e é para uso exclusivo da pessoa ou entidade de destino. Se não é vossa senhoria o destinatário indicado, fica notificado de que a leitura, utilização, divulgação e/ou cópia sem autorização pode estar proibida em virtude da legislação vigente. Se recebeu esta mensagem por erro, rogamos-lhe que nos o comunique imediatamente por esta mesma via e proceda a sua destruição
> Openid-specs-mobile-profile mailing list
> Openid-specs-mobile-profile at lists.openid.net
-------------- next part --------------
An HTML attachment was scrubbed...
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 4326 bytes
Desc: not available
More information about the Openid-specs-mobile-profile