Hi Sagara,
On Mon, Jun 25, 2018 at 10:44 AM Sagara Gunathunga <sag...@wso2.com> wrote: > > > How this new architecture works with application-authentication.xml file, > say we have same parameter name with different names in > application-authentication.xml > file and the script ? > > The parameter set in the application-authentication.xml and script are maintained in two maps in the context. So there want be any overlapping. context.getAuthenticatorParams() will retrieve the parameters from application-authentication.xml. context.getRuntimeParams() will retrieve the parameters set in the script. > I guess we have completed an approach to get user inputs during the > authentication flow, can those user inputs assign to these parameters ? > > Yes, we can assign user inputs into the authenticator params thanks > Thanks ! > > On Mon, Jun 18, 2018 at 11:22 AM, Ayesha Dissanayaka <aye...@wso2.com> > wrote: > >> >> >> On Mon, Jun 18, 2018 at 11:04 AM, Maduranga Siriwardena < >> madura...@wso2.com> wrote: >> >>> Hi Senthalan, >>> >>> "stepOptions" is gives a better meaning than "authenticationOptions" as >>> I feel. >>> >>> Shall we rename the object key to "stepOptions"? Please suggest any >>> better name, if the name "stepOptions" doesn't convey the meaning what >>> it is intended for. >>> >> >> Shall we use just "authenticators"? >> >> >>> >>> Thanks, >>> >>> On Mon, Jun 18, 2018 at 10:14 AM Senthalan Kanagalingam < >>> sentha...@wso2.com> wrote: >>> >>>> Hi Maduranga, >>>> >>>> Yes, we will have 2 objects(authenticationOptions and >>>> authenticatorParams) inside the 2nd parameter. I have done the >>>> implementation to support this template, >>>> >>>> executeStep(<stepNo>, { authenticationOptions : <authenticationOptions >>>> >, >>>> *authenticatorParams : {local : <authenticatorName> : { <key> : >>>> <value>},* >>>> * >>>> federated : <idpName> : { <key> : <value> }* >>>> }, >>>> {onSuccess: function(){<someFunction>}, onFail: >>>> function(){<someFunction>}}) >>>> >>>> Here is the sample, >>>> >>>> function onInitialRequest(context) { >>>> executeStep(1, >>>> { >>>> authenticatorParams: { >>>> local : { >>>> "BasicAuthenticator" :{ >>>> "userName" : "alex", >>>> "domain" : >>>> "localhost" >>>> }, >>>> "SMSOTP" :{ "foo" : "abc"} >>>> }, >>>> federated : { >>>> "FacebookIdp" : { "foo" : "xyz"} >>>> } >>>> }, >>>> { >>>> onSuccess: function (context) { >>>> executeStep(2); >>>> } >>>> } >>>> ); >>>> } >>>> >>>> thanks, >>>> >>>> On Mon, Jun 18, 2018 at 9:43 AM Maduranga Siriwardena < >>>> madura...@wso2.com> wrote: >>>> >>>>> Hi Sagara, >>>>> >>>>> I think "foo" : "alex" is a parameter passed to the authenticator. And >>>>> yes, if we can provide a little bit meaningful example it would be easier >>>>> to understand. >>>>> >>>>> @Senthalan Kanagalingam <sentha...@wso2.com> , I was under the >>>>> impression that we are providing the parameters for the authenticators as >>>>> a >>>>> different JSON object, rather than using the same authenticationOptions >>>>> object which is intended to filter the authenticators prompted in the >>>>> step. >>>>> Have we finalized this? I think if we can provide 2 objects named >>>>> "stepOptions" and "authenticatorParams" (we can decide the names) it would >>>>> be better than using the same object. >>>>> >>>>> Thanks, >>>>> >>>>> On Fri, Jun 15, 2018 at 7:20 PM Sagara Gunathunga <sag...@wso2.com> >>>>> wrote: >>>>> >>>>>> >>>>>> Do we have authenticator with "foo" : "alex" ? when you provide >>>>>> sample please make sure to provide sample closer to real world, please >>>>>> provide a real example. >>>>>> >>>>>> Thanks ! >>>>>> >>>>>> On Fri, Jun 15, 2018 at 6:56 PM, Senthalan Kanagalingam < >>>>>> sentha...@wso2.com> wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> We are having an update in the structure of the basic syntax. Here >>>>>>> is a sample, >>>>>>> >>>>>>> function onInitialRequest(context) { >>>>>>> executeStep(1, >>>>>>> { >>>>>>> authenticationOptions: { >>>>>>> local : { >>>>>>> "BasicAuthenticator" :{ >>>>>>> "foo" : "alex", >>>>>>> "domain" : >>>>>>> "localhost" >>>>>>> }, >>>>>>> "SMSOTP" :{ "foo" : "abc"} >>>>>>> }, >>>>>>> federated : { >>>>>>> "FacebookIdp" : { "foo" : "xyz"} >>>>>>> } >>>>>>> }, >>>>>>> { >>>>>>> onSuccess: function (context) { >>>>>>> executeStep(2); >>>>>>> } >>>>>>> } >>>>>>> ); >>>>>>> } >>>>>>> >>>>>>> We can have 2 objects inside "authenticationOptions". In "local", we >>>>>>> can specify the authenticator identifier and map of parameters >>>>>>> (key-value >>>>>>> pair). And in "federated", we can specify the parameter map for the >>>>>>> federated identity provider. >>>>>>> >>>>>>> And place note that the value of the parameter has to be String. >>>>>>> >>>>>>> thanks, >>>>>>> >>>>>>> On Wed, Jun 13, 2018 at 6:49 PM Senthalan Kanagalingam < >>>>>>> sentha...@wso2.com> wrote: >>>>>>> >>>>>>>> [update] >>>>>>>> >>>>>>>> hi all, >>>>>>>> >>>>>>>> We had an offline discussion and decided to change the >>>>>>>> authentication script syntax. We will be having an extra object in >>>>>>>> the 2nd >>>>>>>> parameter in the executeStep which is introduced to filter the >>>>>>>> authenticators[1]. There we can specify the authenticator and parameter >>>>>>>> >>>>>>>> executeStep(<stepNo>, { authenticationOptions : >>>>>>>> <listOfAuthenticators>, >>>>>>>> *authenticatorParams : [ {authenticator : <authenticatorName>,* >>>>>>>> >>>>>>>> *params : { <paramKey> : <paranValue> }* >>>>>>>> >>>>>>>> *]*, >>>>>>>> >>>>>>>> {onSuccess: function(){<someFunction>}, onFail: function(){< >>>>>>>> someFunction>}}) >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> An example will be, >>>>>>>> >>>>>>>> function onInitialRequest (context) { >>>>>>>> executeStep(1 ,{ authenticationOptions : [{ authenticator : >>>>>>>> "Sample HardwareKey Authenticator"},{ idp : "google" }], >>>>>>>> authenticatorParams : [{ authenticator : "Sample HardwareKey >>>>>>>> Authenticator", >>>>>>>> params : { >>>>>>>> "foo" : "xyz" >>>>>>>> }}, >>>>>>>> { idp : "google", >>>>>>>> params : { >>>>>>>> "foo" : "abc" >>>>>>>> }}] >>>>>>>> },{ >>>>>>>> onSuccess : function(context) { >>>>>>>> executeStep(2); >>>>>>>> } >>>>>>>> }); >>>>>>>> } >>>>>>>> >>>>>>>> In authenticator (java code), we can access the parameter map >>>>>>>> defined by the script for that particular authenticator using >>>>>>>> getRuntimeParams() method. >>>>>>>> >>>>>>>> Please share your idea about this new syntax change and the method >>>>>>>> name. >>>>>>>> >>>>>>>> >>>>>>>> [1] - "[IS] Filtering authentication options of a step by script" >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Jun 12, 2018 at 5:32 PM Senthalan Kanagalingam < >>>>>>>> sentha...@wso2.com> wrote: >>>>>>>> >>>>>>>>> Hi all, >>>>>>>>> >>>>>>>>> With an offline discussion we decided to change the definition >>>>>>>>> from parameter to property. >>>>>>>>> >>>>>>>>> context.*property*.foo = "xyz"; >>>>>>>>> and/or >>>>>>>>> context.*property*['foo'] = "xyz"; >>>>>>>>> >>>>>>>>> So in the authenticator we can access using >>>>>>>>> getScriptProperty("foo"); >>>>>>>>> >>>>>>>>> thanks, >>>>>>>>> Senthalan. >>>>>>>>> >>>>>>>>> On Mon, Jun 11, 2018 at 3:45 PM Senthalan Kanagalingam < >>>>>>>>> sentha...@wso2.com> wrote: >>>>>>>>> >>>>>>>>>> Hi Pulasthi, >>>>>>>>>> >>>>>>>>>> On Mon, Jun 11, 2018 at 11:36 AM Pulasthi Mahawithana < >>>>>>>>>> pulast...@wso2.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Senthalan, >>>>>>>>>>> >>>>>>>>>>> On Mon, Jun 11, 2018 at 11:10 AM Senthalan Kanagalingam < >>>>>>>>>>> sentha...@wso2.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi all, >>>>>>>>>>>> >>>>>>>>>>>> I am working on the $subject. The purpose of this >>>>>>>>>>>> implementation is to have application-specific configurations for >>>>>>>>>>>> authenticators. Currently, we can static configurations for the >>>>>>>>>>>> authenticators in the application-authentication.xml file. >>>>>>>>>>>> >>>>>>>>>>>> In the script, we can set the parameters as follow, If we want >>>>>>>>>>>> to pass the foo to the authenticator, >>>>>>>>>>>> >>>>>>>>>>>> context.foo = "xyz"; >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Shall we change this to following to avoid any conflicts with >>>>>>>>>>> existing context objects? >>>>>>>>>>> >>>>>>>>>>> context.parameter.foo = "xyz"; >>>>>>>>>>> and/or >>>>>>>>>>> context.parameter['foo'] = "xyz"; >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> + 1. I have implemented with the suggestions. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> We can get back the value in the authenticators( executed after >>>>>>>>>>>> this definition) by calling context.getScriptParameter("foo") >>>>>>>>>>>> >>>>>>>>>>>> I have developed a POC for this. I have created a new map in >>>>>>>>>>>> the "AuthenticationContext" to save these parameters. >>>>>>>>>>>> >>>>>>>>>>>> Please share your thoughts about this implementation. >>>>>>>>>>>> >>>>>>>>>>>> thanks, >>>>>>>>>>>> Senthalan. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> *Senthalan Kanagalingam* >>>>>>>>>>>> *Software Engineer - WSO2 Inc.* >>>>>>>>>>>> *Mobile : +94 (0) 77 18 77 466* >>>>>>>>>>>> <http://wso2.com/signature> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> *Pulasthi Mahawithana* >>>>>>>>>>> Associate Technical Lead >>>>>>>>>>> WSO2 Inc., http://wso2.com/ >>>>>>>>>>> Mobile: +94-71-5179022 >>>>>>>>>>> Blog: https://medium.com/@pulasthi7/ >>>>>>>>>>> >>>>>>>>>>> <https://wso2.com/signature> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> >>>>>>>>>> *Senthalan Kanagalingam* >>>>>>>>>> *Software Engineer - WSO2 Inc.* >>>>>>>>>> *Mobile : +94 (0) 77 18 77 466* >>>>>>>>>> <http://wso2.com/signature> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> *Senthalan Kanagalingam* >>>>>>>>> *Software Engineer - WSO2 Inc.* >>>>>>>>> *Mobile : +94 (0) 77 18 77 466* >>>>>>>>> <http://wso2.com/signature> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> *Senthalan Kanagalingam* >>>>>>>> *Software Engineer - WSO2 Inc.* >>>>>>>> *Mobile : +94 (0) 77 18 77 466* >>>>>>>> <http://wso2.com/signature> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> *Senthalan Kanagalingam* >>>>>>> *Software Engineer - WSO2 Inc.* >>>>>>> *Mobile : +94 (0) 77 18 77 466* >>>>>>> <http://wso2.com/signature> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Sagara Gunathunga >>>>>> >>>>>> Director; WSO2, Inc.; http://wso2.com >>>>>> Linkedin; http://www.linkedin.com/in/ssagara >>>>>> Blog ; http://ssagara.blogspot.com >>>>>> Mobile : +9471 <+94%2071%20565%209887>2149951 >>>>>> >>>>>> >>>>> >>>>> -- >>>>> Maduranga Siriwardena >>>>> Senior Software Engineer >>>>> WSO2 Inc; http://wso2.com/ >>>>> >>>>> Email: madura...@wso2.com >>>>> Mobile: +94718990591 >>>>> Blog: *https://madurangasiriwardena.wordpress.com/ >>>>> <https://madurangasiriwardena.wordpress.com/>* >>>>> <http://wso2.com/signature> >>>>> >>>> >>>> >>>> -- >>>> >>>> *Senthalan Kanagalingam* >>>> *Software Engineer - WSO2 Inc.* >>>> *Mobile : +94 (0) 77 18 77 466* >>>> <http://wso2.com/signature> >>>> >>> >>> >>> -- >>> Maduranga Siriwardena >>> Senior Software Engineer >>> WSO2 Inc; http://wso2.com/ >>> >>> Email: madura...@wso2.com >>> Mobile: +94718990591 >>> Blog: *https://madurangasiriwardena.wordpress.com/ >>> <https://madurangasiriwardena.wordpress.com/>* >>> <http://wso2.com/signature> >>> >>> _______________________________________________ >>> Architecture mailing list >>> Architecture@wso2.org >>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>> >>> >> >> >> -- >> *Ayesha Dissanayaka* >> Senior Software Engineer, >> WSO2, Inc : http://wso2.com >> <http://www.google.com/url?q=http%3A%2F%2Fwso2.com&sa=D&sntz=1&usg=AFQjCNEZvyc0uMD1HhBaEGCBxs6e9fBObg> >> 20, Palm grove Avenue, Colombo 3 >> E-Mail: aye...@wso2.com <ayshsa...@gmail.com> >> >> _______________________________________________ >> Architecture mailing list >> Architecture@wso2.org >> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >> >> > > > -- > Sagara Gunathunga > > Director; WSO2, Inc.; http://wso2.com > Linkedin; http://www.linkedin.com/in/ssagara > Blog ; http://ssagara.blogspot.com > Mobile : +9471 <+94%2071%20565%209887>2149951 > > _______________________________________________ > Architecture mailing list > Architecture@wso2.org > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > -- *Senthalan Kanagalingam* *Software Engineer - WSO2 Inc.* *Mobile : +94 (0) 77 18 77 466* <http://wso2.com/signature>
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture