Hi Ahamed,

 

Thank you for your support and suggestions, I was able to successfully obtain 
the tenant domain name using from clientId as you suggested. And also in 
AccessTokenIssuer class in issue method itself a proper tenant domain based on 
clientId is set in oauth token request object.

 

Thank You,

Shiva Kumar KR

 

From: Farasath Ahamed [mailto:[email protected]] 
Sent: 06 September 2017 17:40
To: [email protected]; WSO2 Developers' List <[email protected]>
Subject: Re: [Dev] Where can I find /token endpoint source code.

 

 

On Tue, Sep 5, 2017 at 10:39 PM, Farasath Ahamed <[email protected] 
<mailto:[email protected]> > wrote:

Hi Shiva,

 

Please use reply all including the dev list :) So that others will be able to 
chip in with their ideas as well...

 

There is a small catch there. Even if you managed to pass the tenantDomain as a 
query param to the token endpoint it will not reach your extended password 
grant handler. The reason is this line of code in our current 
implementation[1], which limits the password grant type to pass username, 
password parameters only to the grant handler. We have fixed this in master 
where we pass all the parameters sent in the token.

 

There is a small trick to get this working. You can write a grant handler 
extending the password grant handler but register it as a custom grant instead 
of grant_type=password, let's say you register it as grant_type=custom1, then 
in the token request you can send the tenantDomain as a parameter like below,

 

"grant_type=custom1&username=ddd&password&tenantDomain=abc.com <http://abc.com> 
",

 

within the grant handler, you can access any parameter sent using,

 

 // extract request parameters

 RequestParameter[] parameters = 
oAuthTokenReqMessageContext.getOauth2AccessTokenReqDTO().getRequestParameters();

 

All the details you need to implement a custom grant type are in [2] with 
examples. Give it a try! :)

 

 

[1] 
https://github.com/wso2-support/identity-inbound-auth-oauth/blob/support-5.3.3/components/org.wso2.carbon.identity.oauth.endpoint/src/main/java/org/wso2/carbon/identity/oauth/endpoint/token/OAuth2TokenEndpoint.java#L273-L275

 

Correct link

https://github.com/wso2-extensions/identity-inbound-auth-oauth/blob/v5.3.3/components/org.wso2.carbon.identity.oauth.endpoint/src/main/java/org/wso2/carbon/identity/oauth/endpoint/token/OAuth2TokenEndpoint.java#L257-L287
 

 

 

 

[2] https://docs.wso2.com/display/IS530/Writing+a+Custom+OAuth+2.0+Grant+Type

 

 

Thanks,


Farasath Ahamed

Software Engineer, WSO2 Inc.;  <http://wso2.com/> http://wso2.com

Mobile:  <tel:%2B94777603866> +94777603866

Blog: blog.farazath.com <http://blog.farazath.com> 

Twitter: @farazath619 <https://twitter.com/farazath619> 

 <http://wso2.com/signature> 

 

 

 

On Tue, Sep 5, 2017 at 10:16 PM, <[email protected] 
<mailto:[email protected]> > wrote:

Yes absolutely 😊 is there any way or alternate way?

 

From: Farasath Ahamed [mailto:[email protected] <mailto:[email protected]> ] 
Sent: 05 September 2017 22:14
To: [email protected] <mailto:[email protected]> ; WSO2 
Developers' List <[email protected] <mailto:[email protected]> >
Subject: Re: [Dev] Where can I find /token endpoint source code.

 

 

 

On Tue, Sep 5, 2017 at 10:06 PM, <[email protected] 
<mailto:[email protected]> > wrote:

Hi Ahamed,

 

Thank you for your response I found the configuration files. Is it possible to 
change the /token context attribute to take a path variable in /token and pass 
that to /oauth2/token. Eg.

 

<api xmlns="http://ws.apache.org/ns/synapse"; name="_WSO2AMTokenAPI_" 
context="/{domain}/token">

 

And your ultimate target is to pass this particular parameter to the password 
grant handler is it?

 

 

Thank You,

Shiva Kumar KR

 

From: Farasath Ahamed [mailto:[email protected] <mailto:[email protected]> ] 
Sent: 05 September 2017 21:26
To: [email protected] <mailto:[email protected]> 
Cc: WSO2 Developers' List <[email protected] <mailto:[email protected]> >
Subject: Re: [Dev] Where can I find /token endpoint source code.

 

Hi Shiva,

 

/token exposed is actually a proxy to /oauth2/token which is the actual 
endpoint that handles your token request. Souce code for OAuth2 Token Endpoint 
can be found in [1].

You can find the proxy configuration for /token in 
APIM_HOME/repository/deployment/server/synapse-configs/default/api/_TokenAPI_.xml

 

 

[1] 
https://github.com/wso2-extensions/identity-inbound-auth-oauth/blob/v5.3.4/components/org.wso2.carbon.identity.oauth.endpoint/src/main/java/org/wso2/carbon/identity/oauth/endpoint/token/OAuth2TokenEndpoint.java

 

 

Thanks,

Farasath




Farasath Ahamed

Software Engineer, WSO2 Inc.;  <http://wso2.com/> http://wso2.com

Mobile:  <tel:%2B94777603866> +94777603866

Blog: blog.farazath.com <http://blog.farazath.com> 

Twitter: @farazath619 <https://twitter.com/farazath619> 

 <http://wso2.com/signature>  

 <http://wso2.com/signature>  

 <http://wso2.com/signature>  

 <http://wso2.com/signature> On Tue, Sep 5, 2017 at 9:13 PM, 
<[email protected]> wrote:

 <http://wso2.com/signature> Hi WSO2 team,

 <http://wso2.com/signature>  

 <http://wso2.com/signature> I want to know in which class /token url request 
is handled. It will be very helpful for me if any one suggest which class name 
and project.

 <http://wso2.com/signature>  

 <http://wso2.com/signature> Thank You,

 <http://wso2.com/signature> Shiva Kumar KR

 <http://wso2.com/signature> 
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

 <http://wso2.com/signature>  

 <http://wso2.com/signature>  

 

 

_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to