On Fri, Nov 17, 2017 at 7:08 PM, Farasath Ahamed <farasa...@wso2.com> wrote:
> > > Farasath Ahamed > Software Engineer, WSO2 Inc.; http://wso2.com > Mobile: +94777603866 > Blog: blog.farazath.com > Twitter: @farazath619 <https://twitter.com/farazath619> > <http://wso2.com/signature> > > > > On Fri, Nov 17, 2017 at 6:48 PM, Johann Nallathamby <joh...@wso2.com> > wrote: > >> >> >> On Fri, Nov 17, 2017 at 6:39 PM, Malithi Edirisinghe <malit...@wso2.com> >> wrote: >> >>> >>> >>> On Fri, Nov 17, 2017 at 6:12 PM, Johann Nallathamby <joh...@wso2.com> >>> wrote: >>> >>>> Hi Farasath, >>>> >>>> On Fri, Nov 17, 2017 at 5:35 PM, Farasath Ahamed <farasa...@wso2.com> >>>> wrote: >>>> >>>>> >>>>> On Fri, Nov 17, 2017 at 3:23 PM, Johann Nallathamby <joh...@wso2.com> >>>>> wrote: >>>>> >>>>>> Self contained JWT's may get quite large and if we set it as the >>>>>> default size in the script, for users who are not using self contained >>>>>> JWT >>>>>> also it is going to consume large space in the database. >>>>>> >>>>>> Did we think about storing a hash of the access token? >>>>>> >>>>> >>>>> As pointed out by Johann JWT can grow large with requested claims etc. >>>>> so changing the column size can happen as soon as the JWT exceeds the >>>>> defined length, >>>>> >>>>> Therefore, We had few discussions offline on options to resolve this. >>>>> >>>>> 1. User a different data type like BLOB/TEXT to store the JWT access >>>>> token and store a hash to improve search. In this approach we will avoid >>>>> the SQL error, but there will be performance drop for normal UUID based >>>>> access tokens. >>>>> >>>> >>>> May be we can introduce a config to say whether we need to hash or not. >>>> >>>> >>>>> >>>>> 2. Not store the self contained access token in the database at >>>>> all[1]. Since by definition the self contained access token has all the >>>>> necessary data to validate it we can validate the token on IS during >>>>> introspection. Ideally, the idea behind the self contained access token is >>>>> to avoid introspection. But if required we can do it using the presented >>>>> the JWT itself.(This is how client will validate the access token >>>>> anyways). >>>>> Downfall of this approach is that we cannot revoke the token since we >>>>> don't anyway keep any reference to the issued token. >>>>> >>>> >>>> We can use the "jti" claim of the JWT as the reference and use it to >>>> manage the token in IS. >>>> >>> >>> So I think you meant that we don't need to persist the self contained >>> access token at all (even the hash) and use an identifier to reference the >>> token issued. And that reference will be returned with the JWT as 'jti' >>> claim. >>> >> >> Yes >> > > So we can store the jti as the access_token in the IDN_ACCESS_TOKEN table. > Is my understanding correct? > Yes :) > > >> >> >>> >>> >>>> >>>> Regards, >>>> Johann. >>>> >>>> >>>>> >>>>> [1] https://www.oauth.com/oauth2-servers/access-tokens/self- >>>>> encoded-access-tokens/ >>>>> <https://www.google.com/url?q=https%3A%2F%2Fwww.oauth.com%2Foauth2-servers%2Faccess-tokens%2Fself-encoded-access-tokens%2F&sa=D&sntz=1&usg=AFQjCNF5pHN-sGoIgbANyG1WpbRC-dZfSA> >>>>> >>>>> >>>>> Appreciate your thoughts! >>>>> >>>>> >>>>> >>>>>> >>>>>> On Fri, Nov 17, 2017 at 3:06 PM, Isura Karunaratne <is...@wso2.com> >>>>>> wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Fri, Nov 17, 2017 at 1:35 PM, Isura Karunaratne <is...@wso2.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi all, >>>>>>>> >>>>>>>> Currently, ACCESS_TOKEN column length is defined as 512 [1] which >>>>>>>> is not enough to store self-contained access token [2]. >>>>>>>> >>>>>>>> Shall we increase the column size by default? >>>>>>>> >>>>>>>> Thanks >>>>>>>> Isura. >>>>>>>> >>>>>>>> >>>>>>>> [1] >>>>>>>> CREATE TABLE IF NOT EXISTS IDN_OAUTH2_ACCESS_TOKEN ( >>>>>>>> TOKEN_ID VARCHAR (255), >>>>>>>> ACCESS_TOKEN VARCHAR(512), >>>>>>>> REFRESH_TOKEN VARCHAR(512), >>>>>>>> CONSUMER_KEY_ID INTEGER, >>>>>>>> AUTHZ_USER VARCHAR (100), >>>>>>>> TENANT_ID INTEGER, >>>>>>>> USER_DOMAIN VARCHAR(50), >>>>>>>> USER_TYPE VARCHAR (25), >>>>>>>> GRANT_TYPE VARCHAR (50), >>>>>>>> TIME_CREATED TIMESTAMP DEFAULT 0, >>>>>>>> REFRESH_TOKEN_TIME_CREATED TIMESTAMP DEFAULT 0, >>>>>>>> VALIDITY_PERIOD BIGINT, >>>>>>>> REFRESH_TOKEN_VALIDITY_PERIOD BIGINT, >>>>>>>> TOKEN_SCOPE_HASH VARCHAR(32), >>>>>>>> TOKEN_STATE VARCHAR(25) DEFAULT 'ACTIVE', >>>>>>>> TOKEN_STATE_ID VARCHAR (128) DEFAULT 'NONE', >>>>>>>> SUBJECT_IDENTIFIER VARCHAR(255), >>>>>>>> PRIMARY KEY (TOKEN_ID), >>>>>>>> FOREIGN KEY (CONSUMER_KEY_ID) REFERENCES >>>>>>>> IDN_OAUTH_CONSUMER_APPS(ID) ON DELETE CASCADE, >>>>>>>> CONSTRAINT CON_APP_KEY UNIQUE >>>>>>>> (CONSUMER_KEY_ID,AUTHZ_USER,TENANT_ID,USER_DOMAIN,USER_TYPE, >>>>>>>> TOKEN_SCOPE_HASH, >>>>>>>> >>>>>>>> TOKEN_STATE,TOKEN_STATE_ID) >>>>>>>> >>>>>>>> >>>>>>>> [2] https://wso2.org/jira/browse/IDENTITY-6917 >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> *Isura Dilhara Karunaratne* >>>>>>>> Associate Technical Lead | WSO2 >>>>>>>> Email: is...@wso2.com >>>>>>>> Mob : +94 772 254 810 <+94%2077%20225%204810> >>>>>>>> Blog : http://isurad.blogspot.com/ >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> *Isura Dilhara Karunaratne* >>>>>>> Associate Technical Lead | WSO2 >>>>>>> Email: is...@wso2.com >>>>>>> Mob : +94 772 254 810 <+94%2077%20225%204810> >>>>>>> Blog : http://isurad.blogspot.com/ >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Thanks & Regards, >>>>>> >>>>>> *Johann Dilantha Nallathamby* >>>>>> Senior Lead Solutions Engineer >>>>>> WSO2, Inc. >>>>>> lean.enterprise.middleware >>>>>> >>>>>> Mobile - *+94777776950* >>>>>> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>* >>>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> Thanks & Regards, >>>> >>>> *Johann Dilantha Nallathamby* >>>> Senior Lead Solutions Engineer >>>> WSO2, Inc. >>>> lean.enterprise.middleware >>>> >>>> Mobile - *+94777776950* >>>> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>* >>>> >>> >>> >>> >>> -- >>> >>> *Malithi Edirisinghe* >>> Associate Technical Lead >>> WSO2 Inc. >>> >>> Mobile : +94 (0) 718176807 >>> malit...@wso2.com >>> >> >> >> >> -- >> Thanks & Regards, >> >> *Johann Dilantha Nallathamby* >> Senior Lead Solutions Engineer >> WSO2, Inc. >> lean.enterprise.middleware >> >> Mobile - *+94777776950* >> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>* >> > > -- Thanks & Regards, *Johann Dilantha Nallathamby* Senior Lead Solutions Engineer 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