On Friday, April 5, 2019, Sathya Bandara <[email protected]> wrote: > Hi Farasath, > > For federated users, we are setting the SP's tenant domain as user tenant > domain. However userstore domain will be null. Therefore we can pass only > the tenant domain in the realm. WDYT? > Ok that seems fine.
How are we planning to handle the case where the id_token builder has been customized? One possible way is to keep the old logic for customized id_token builders and id_tokens without "realm" claim. > > On Fri, Apr 5, 2019 at 9:36 AM Farasath Ahamed <[email protected]> wrote: > >> Hi Devs, >> >> Also what about the value of " *realm*" claim when the user is a >> federated one? >> >> Regards, >> Farasath >> >> On Fri, Apr 5, 2019 at 9:32 AM Hasini Witharana <[email protected]> wrote: >> >>> Hi Ruwan/Sathya, >>> >>> There are some standard claims defined in the OIDC specification[1], >>> none of them can be used instead of "realm", "tenant_domain". >>> However, the spec also says that it is okay to add any other claims to >>> id_token[2]. >>> >>> [1] - https://openid.net/specs/openid-connect-core-1_0.html# >>> StandardClaims >>> [2] - https://openid.net/specs/openid-connect-core-1_0.html#IDToken >>> >>> Thank You. >>> Hasini >>> >>> On Fri, Apr 5, 2019 at 6:30 AM Ruwan Abeykoon <[email protected]> wrote: >>> >>>> Hi Sathya, >>>> I do not see any issue adding the info-set to the id-token, as >>>> conceptually it carries more information about the users identity. >>>> Did we checked if there an standard claims in id token we could use, >>>> instead of "realm", "tenant_domain", etc. >>>> >>>> Cheers, >>>> Ruwan A >>>> >>>> On Thu, Apr 4, 2019 at 11:43 PM Sathya Bandara <[email protected]> wrote: >>>> >>>>> Hi all, >>>>> >>>>> In OIDC logout flow, we send the ID token as a user identification >>>>> method similar to following request. >>>>> >>>>> https://localhost:9443/oidc/logout?id_token_hint=<id_ >>>>> token>&post_logout_redirect_uri=http://localhost:8080/ >>>>> playground2/oauth2client&state=1 >>>>> >>>>> when validating the ID token, we are trying to get tenant domain from >>>>> subject claim of the id token hint [1] in the default flow. This will only >>>>> work if '*append tenant domain to subject identifier'* is selected in >>>>> the SP configuration. In other scenarios it fails with the error >>>>> "access_denied ID token signature validation failed." This is because if >>>>> subject does not contain the tenant domain, we try to validate the id >>>>> token >>>>> with super tenant's keystore. Further this fails when subject identifier >>>>> is >>>>> set as email claim, and email contains a different domain such as >>>>> [email protected] <[email protected]> >>>>> >>>>> We have a config to enable/disable signing ID token with SP's keystore >>>>> identity.xml ('SignJWTWithSPKey'). As this configuration is disabled by >>>>> default, ID token will be signed and validated using user's tenant domain >>>>> leading to above issue. >>>>> >>>>> As a possible solution, we have decided to include user tenant domain >>>>> and userstore domain as claims in the id token generated by IS. This can >>>>> be >>>>> disabled by a config however in the default pack it will be enabled by >>>>> default. Sample id token will be as follows. >>>>> >>>>> { >>>>> "at_hash": "Bi9jGB-EIZ94gVzHZv5trQ", >>>>> "aud": "b3F9IGMtm0aKGlHfG4BnI2Ypi7Qa", >>>>> "sub": "sathya", >>>>> >>>>> >>>>> >>>>> * "realm": { "tenant_domain: "wso2.com <http://wso2.com>", >>>>> "userstore_domain: "PRIMARY" }*, >>>>> "iss": "https://localhost:9443/oauth2/token", >>>>> "exp": 1554367465, >>>>> "iat": 1554363865, >>>>> } >>>>> >>>>> Also 'SignJWTWithSPKey' property will be enabled by default in the >>>>> product, honoring service provider's tenant domain when obtaining keys for >>>>> signing and validating id tokens. >>>>> >>>>> Highly appreciate your suggestions and concerns on this. >>>>> >>>>> [1] https://github.com/wso2-extensions/identity-inbound- >>>>> auth-oauth/blob/master/components/org.wso2.carbon. >>>>> identity.oidc.session/src/main/java/org/wso2/carbon/ >>>>> identity/oidc/session/servlet/OIDCLogoutServlet.java#L331 >>>>> Thanks, >>>>> Sathya >>>>> -- >>>>> Sathya Bandara >>>>> Senior Software Engineer >>>>> Blog: https://medium.com/@technospace >>>>> WSO2 Inc. http://wso2.com >>>>> Mobile: (+94) 715 360 421 <+94%2071%20411%205032> >>>>> >>>>> <+94%2071%20411%205032> >>>>> >>>> >>>> >>>> -- >>>> >>>> *Ruwan Abeykoon* >>>> *Associate Director/Architect**,* >>>> *WSO2, Inc. http://wso2.com <https://wso2.com/signature> * >>>> *lean.enterprise.middleware.* >>>> >>>> _______________________________________________ >>>> Dev mailing list >>>> [email protected] >>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>> >>> >>> >>> -- >>> *Hasini Witharana | **Software Engineer | **WSO2 Inc >>> <https://wso2.com/>* >>> *(m) 0766435725 | (w) 0713850143 | (e) [email protected] >>> <[email protected]>* >>> >>> _______________________________________________ >>> Dev mailing list >>> [email protected] >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >> >> >> -- >> Farasath Ahamed >> Senior Software Engineer, WSO2 Inc.; http://wso2.com >> Mobile: +94777603866 >> Blog: https://farasath.blogspot.com / https://medium.com/@farasath >> Twitter: @farazath619 <https://twitter.com/farazath619> >> <http://wso2.com/signature> >> >> >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> > > > -- > Sathya Bandara > Senior Software Engineer > Blog: https://medium.com/@technospace > WSO2 Inc. http://wso2.com > Mobile: (+94) 715 360 421 <+94%2071%20411%205032> > > <+94%2071%20411%205032> > -- Farasath Ahamed Senior Software Engineer, WSO2 Inc.; http://wso2.com Mobile: +94777603866 Blog: https://farasath.blogspot.com / https://medium.com/@farasath Twitter: @farazath619 <https://twitter.com/farazath619> <http://wso2.com/signature>
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
