On Tue, May 2, 2017 at 1:48 AM, Manoj Gunawardena <man...@wso2.com> wrote:

> +1 for handle authorization in consistent way for all end points.
> Such as
> "/oauth2/introspect"
> "oauth2/userinfo"
>
> According to IS 5.3 Authentication and Authorization of REST APIS
> mechanism [1], what are the permission strings assign for following end
> points.
>
> "oauth2/token"
> "oauth2/revoke"
> "/oauth2/introspect"
> "oauth2/userinfo"
>


Of these, I think only "/oauth2/introspect" is currently protected with [1].

    <ResourceAccessControl>
        <Resource context="(.*)/api/identity/user/(.*)" secured="true"
http-method="all"/>
        <Resource context="(.*)/api/identity/recovery/(.*)" secured="true"
http-method="all"/>
        <Resource context="(.*)/.well-known(.*)" secured="true"
http-method="all"/>
        <Resource context="(.*)/identity/register(.*)" secured="true"
http-method="all">

<Permissions>/permission/admin/manage/identity/applicationmgt/delete</Permissions>
        </Resource>
        <Resource context="(.*)/identity/connect/register(.*)"
secured="true" http-method="all">

<Permissions>/permission/admin/manage/identity/applicationmgt/create</Permissions>
        </Resource>
        <Resource context="(.*)/oauth2/introspect(.*)" secured="true"
http-method="all">
            <Permissions>
*/permission/admin/manage/identity/applicationmgt/view*</Permissions>
        </Resource>
        <Resource context="(.*)/api/identity/entitlement/(.*)"
secured="true" http-method="all">
            <Permissions>/permission/admin/manage/identity/pep</Permissions>
        </Resource>
    </ResourceAccessControl>


Based on [2], AFAIU these are the required permissions,

"oauth2/token" -->  No permission check

"oauth2/revoke" --> /permission/admin/manage/identity/applicationmgt/view

"oauth2/userinfo" -->  No permission check


> [1] https://docs.wso2.com/display/IS530/Authenticating+and+
> Authorizing+REST+APIs
>

    [2]
https://github.com/wso2-extensions/identity-inbound-auth-oauth/blob/master/components/org.wso2.carbon.identity.oauth/src/main/resources/META-INF/services.xml


>
>
> On Wed, Apr 26, 2017 at 3:50 PM, Johann Nallathamby <joh...@wso2.com>
> wrote:
>
>> How about "/oauth2/introspect" endpoint?
>>
>> On Wed, Apr 26, 2017 at 9:25 AM, Harsha Thirimanna <hars...@wso2.com>
>> wrote:
>>
>>> On Wed, Apr 26, 2017 at 9:07 AM, Asela Pathberiya <as...@wso2.com>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Tue, Apr 25, 2017 at 3:34 PM, Harsha Thirimanna <hars...@wso2.com>
>>>> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Tue, Apr 25, 2017 at 3:04 PM, Asela Pathberiya <as...@wso2.com>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Apr 25, 2017 at 2:52 PM, Harsha Thirimanna <hars...@wso2.com>
>>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>> On Tue, Apr 25, 2017 at 2:00 PM, Asela Pathberiya <as...@wso2.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Apr 25, 2017 at 12:44 PM, Harsha Thirimanna <
>>>>>>>> hars...@wso2.com> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Tue, Apr 25, 2017 at 12:38 PM, Nuwan Dias <nuw...@wso2.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Gayan,
>>>>>>>>>>
>>>>>>>>>> What are you trying to achieve by moving the client-secret
>>>>>>>>>> validation logic to the interceptor from the jax-rs layer?
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ​Actually, we have separate layer to pass the secured API in IS
>>>>>>>>> and it is common service that can be used for any product. AppManager 
>>>>>>>>> also
>>>>>>>>> using that.
>>>>>>>>> In here also Gayan is trying to get the security check into that
>>>>>>>>> common layer instead of allowing to go into the next level to validate
>>>>>>>>> headers.  ​
>>>>>>>>>
>>>>>>>>
>>>>>>>> Are we going to use common basic authentication handler  ?
>>>>>>>>
>>>>>>>
>>>>>>> ​This feature is already done in IS 5.3.0 as a common point to
>>>>>>> handle authentication and authorization per resources as in [1].​
>>>>>>>
>>>>>>> [1] http://harshathirimanna.blogspot.com/2016/11/authenticat
>>>>>>> ion-authorization-common.html
>>>>>>>
>>>>>>>>
>>>>>>>> BTW;  Client credentials can be received as url param..  Are we
>>>>>>>> validating them in here ?  If it is not;  Why are we introducing two
>>>>>>>> validation points for same ?
>>>>>>>>
>>>>>>>> ​If we have our own way to pass authentication details,​ then we
>>>>>>> have to write an authentication handler to that and register.
>>>>>>>
>>>>>>
>>>>>> This is according to the OAuth2 spec...  It meant that we need
>>>>>> another handler implementation to do it or can we use existing
>>>>>> authentication handler ?
>>>>>>
>>>>>
>>>>> ​What i meant was that we can write custom handler as well to here. ​
>>>>>
>>>> Yes.  if it is;  it must be shipped by default.
>>>>
>>> ​Gayan will do that with this implementation. ​
>>>
>>>>
>>>>
>>>>>
>>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Actually I do not see much use of changing the current validation
>>>>>>>> model.
>>>>>>>>
>>>>>>> ​This is for all the APIs in IS to handle
>>>>>>> authentication/authorization in common way​ and decouple it with
>>>>>>> implementation of each.
>>>>>>>
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Asela.
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Since both run on the same JVM, doesn't the overhead of the
>>>>>>>>>> process remain the same, irrespective of where it runs?
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> NuwanD.
>>>>>>>>>>
>>>>>>>>>> On Tue, Apr 25, 2017 at 12:27 PM, Gayan Gunawardana <
>>>>>>>>>> ga...@wso2.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi All,
>>>>>>>>>>>
>>>>>>>>>>> In Oauth /token endpoint and /revoke endpoint
>>>>>>>>>>>
>>>>>>>>>>> https://localhost:9443/oauth2/token
>>>>>>>>>>> https://localhost:9443/oauth2/revoke
>>>>>>>>>>>
>>>>>>>>>>> required authorization with client key, client secret in basic
>>>>>>>>>>> auth headers. Currently in implementation we validate those headers 
>>>>>>>>>>> after
>>>>>>>>>>> serving request to JAX-RS endpoints. Basically /token, /revoke 
>>>>>>>>>>> endpoints
>>>>>>>>>>> are unsecured. There is significant amount of processing happen 
>>>>>>>>>>> even for
>>>>>>>>>>> wrong client secret.
>>>>>>>>>>>
>>>>>>>>>>> Since we have REST API  interceptor layer In IS 5.3.0  can we
>>>>>>>>>>> use it to validate client credentials ? We may need to plug an 
>>>>>>>>>>> additional
>>>>>>>>>>> authenticator to validate client key, client secret in basic auth 
>>>>>>>>>>> headers.
>>>>>>>>>>> This authenticator may conflict with basic authenticator because
>>>>>>>>>>> both authenticators validate basic auth credentials different way. 
>>>>>>>>>>> There
>>>>>>>>>>> are two approaches to avoid the conflict.
>>>>>>>>>>>
>>>>>>>>>>> *#option 01 *
>>>>>>>>>>> Increase the priority of newly added authenticator and check the
>>>>>>>>>>> context inside authenticator canHandle.
>>>>>>>>>>>
>>>>>>>>>>> *#option 01 *
>>>>>>>>>>> Increase the priority of newly added authenticator and check
>>>>>>>>>>> existence of oauth application from client key.
>>>>>>>>>>>
>>>>>>>>>>> WDYT?
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Gayan Gunawardana
>>>>>>>>>>> Software Engineer; WSO2 Inc.; http://wso2.com/
>>>>>>>>>>> Email: ga...@wso2.com
>>>>>>>>>>> Mobile: +94 (71) 8020933
>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Architecture mailing list
>>>>>>>>>>> Architecture@wso2.org
>>>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Nuwan Dias
>>>>>>>>>>
>>>>>>>>>> Software Architect - WSO2, Inc. http://wso2.com
>>>>>>>>>> email : nuw...@wso2.com
>>>>>>>>>> Phone : +94 777 775 729 <+94%2077%20777%205729>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Architecture mailing list
>>>>>>>>> Architecture@wso2.org
>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thanks & Regards,
>>>>>>>> Asela
>>>>>>>>
>>>>>>>> ATL
>>>>>>>> Mobile : +94 777 625 933 <+94%2077%20762%205933>
>>>>>>>>              +358 449 228 979
>>>>>>>>
>>>>>>>> http://soasecurity.org/
>>>>>>>> http://xacmlinfo.org/
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Architecture mailing list
>>>>>>>> Architecture@wso2.org
>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Architecture mailing list
>>>>>>> Architecture@wso2.org
>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks & Regards,
>>>>>> Asela
>>>>>>
>>>>>> ATL
>>>>>> Mobile : +94 777 625 933 <+94%2077%20762%205933>
>>>>>>              +358 449 228 979
>>>>>>
>>>>>> http://soasecurity.org/
>>>>>> http://xacmlinfo.org/
>>>>>>
>>>>>> _______________________________________________
>>>>>> Architecture mailing list
>>>>>> Architecture@wso2.org
>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Architecture mailing list
>>>>> Architecture@wso2.org
>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks & Regards,
>>>> Asela
>>>>
>>>> ATL
>>>> Mobile : +94 777 625 933 <+94%2077%20762%205933>
>>>>              +358 449 228 979
>>>>
>>>> http://soasecurity.org/
>>>> http://xacmlinfo.org/
>>>>
>>>> _______________________________________________
>>>> Architecture mailing list
>>>> Architecture@wso2.org
>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Architecture mailing list
>>> Architecture@wso2.org
>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>
>>>
>>
>>
>> --
>> Thanks & Regards,
>>
>> *Johann Dilantha Nallathamby*
>> Technical Lead & Product Lead of WSO2 Identity Server
>> Governance Technologies Team
>> WSO2, Inc.
>> lean.enterprise.middleware
>>
>> Mobile - *+94777776950*
>> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>*
>>
>> _______________________________________________
>> Architecture mailing list
>> Architecture@wso2.org
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> Manoj Gunawardena
> Tech Lead
> WSO2, Inc.: http://wso2.com
> lean.enterprise.middleware
> Mobile : +94 77 2291643
>
> _______________________________________________
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to