Hi Sathya, Thanks for the request. This works as expected .
On Wed, Jan 24, 2018 at 10:10 AM, Sathya Bandara <[email protected]> wrote: > Hi Sherene, > > Following is a sample request for addUserStore() operation in > UserStoreConfigAdminService > which I have tested and verified on a 5.3.0 WUM updated pack. However > this is for a JDBCUserStoreManager. Hope this might be of help to you. > > <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" > xmlns:xsd="http://org.apache.axis2/xsd" > xmlns:xsd1="http://dto.configuration.store.user.identity.carbon.wso2.org/xsd"> > <soap:Header/> > <soap:Body> > <xsd:addUserStore> > <!--Optional:--> > <xsd:userStoreDTO> > <!--Optional:--> > > <xsd1:className>org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager</xsd1:className> > <!--Optional:--> > <xsd1:description></xsd1:description> > <!--Optional:--> > <xsd1:disabled>false</xsd1:disabled> > <!--Optional:--> > <xsd1:domainId>SECONDARY</xsd1:domainId> > <!--Zero or more repetitions:--> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>url</xsd1:name> > <!--Optional:--> > > <xsd1:value>jdbc:mysql://localhost:3306/JDBC_user_store?useSSL=false</xsd1:value> > </xsd1:properties> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>userName</xsd1:name> > <!--Optional:--> > <xsd1:value>root</xsd1:value> > </xsd1:properties> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>password</xsd1:name> > <!--Optional:--> > <xsd1:value>root</xsd1:value> > </xsd1:properties> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>driverName</xsd1:name> > <!--Optional:--> > <xsd1:value>com.mysql.jdbc.Driver</xsd1:value> > </xsd1:properties> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>maxActive</xsd1:name> > <!--Optional:--> > <xsd1:value>50</xsd1:value> > </xsd1:properties> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>maxWait</xsd1:name> > <!--Optional:--> > <xsd1:value>60000</xsd1:value> > </xsd1:properties> > <xsd1:properties> > <!--Optional:--> > <xsd1:name>validationQuery</xsd1:name> > <!--Optional:--> > <xsd1:value>SELECT 1</xsd1:value> > </xsd1:properties> > </xsd:userStoreDTO> > </xsd:addUserStore> > </soap:Body> > </soap:Envelope> > > > Thanks, > Sathya > > On Tue, Jan 23, 2018 at 10:13 PM, Sherene Mahanama <[email protected]> > wrote: > >> Hi IAM Team, >> >> Kind reminder on this. >> >> Thanks, >> Sherene >> >> On Tue, Jan 23, 2018 at 5:34 PM, Chankami Maddumage <[email protected]> >> wrote: >> >>> Hi Sherene , >>> >>> Did you able to get a working sample request ? >>> This is a blocker for us when automating scripts for Test grid . >>> >>> >>> >>> On Tue, Jan 16, 2018 at 1:51 PM, Sherene Mahanama <[email protected]> >>> wrote: >>> >>>> Hi IAM Team, >>>> >>>> The UserStoreConfigAdminService has been documented in [1]. I have also >>>> added a tip under the addUserStore operation that links off to the relevant >>>> docs for a full list of properties including optional properties for each >>>> user store type. >>>> >>>> However, the sample request given under the addUserStore() operation >>>> [2] only includes mandatory parameters which will not work as mentioned by >>>> Dilini and Godwin. Can we please have a working sample request that we can >>>> add to the doc? Which optional parameters need to be included in the >>>> request for it to work as expected? Please advise. >>>> >>>> [1] https://docs.wso2.com/display/IS5xx/Managing+User+Stores+with+APIs >>>> [2] https://docs.wso2.com/display/IS5xx/Managing+User+Stores+wit >>>> h+APIs#ManagingUserStoreswithAPIs-addUserStore() >>>> >>>> Thanks, >>>> Sherene >>>> >>>> On Thu, Dec 21, 2017 at 9:18 AM, Dilini Gunatilake <[email protected]> >>>> wrote: >>>> >>>>> Hi Tharindu/Godwin, >>>>> >>>>> I already checked the config file. The default regex were not added. >>>>> Following are the only configs available in the file (which are the ones I >>>>> configured). >>>>> >>>>> <?xml version="1.0" encoding="UTF-8"?><UserStoreManager class=" >>>>> org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager"> >>>>> <Property name="url">jdbc:mysql://localh >>>>> ost:3306/is520user</Property> >>>>> <Property name="userName">wso2carbon</Property> >>>>> <Property encrypted="true" name="password">A1yNIeGmb1QZHD >>>>> Ik09yOyx/+PWDPNRfOk6tCiCnQWzhFiXFaVu5dSWfqah7AElOdKqjgl0BOFd >>>>> k4sXRGtjdPM3t8bODe9KzKrA3EJJ2mP16zbOah8JhFMJJDWOw0wkBy4TSnl7 >>>>> GBrGJMzQTazzYaxN/+nVpF25nbq1p7TzNytOJxagNMRjwnhgl08lFPNKs1VC >>>>> J1D4spQ4zjLp5oJBftdzMdi5wPo8tdNWu/oRRPZjz4Y/mWy4cE7hHZlPul3k >>>>> Yzm1BP2kWX/rsUgRdaKeSKaQwqNVOOsZxCgWTCanUMmZKvHOxehVe3Bypebc >>>>> iR58RQH5Vyk6l+JCrXNvBN1OBOoA==</Property> >>>>> <Property name="driverName">com.mysql.jdbc.Driver</Property> >>>>> <Property name="CountRetrieverClass">org >>>>> .wso2.carbon.identity.user.store.count.jdbc.JDBCUserStoreCou >>>>> ntRetriever</Property> >>>>> <Property name="DomainName">PRIMARY-JDBC >>>>> 780-ATTRIBUTE-STORE</Property> >>>>> <Property name="Description">created with admin >>>>> services</Property> >>>>> </UserStoreManager> >>>>> >>>>> >>>>> @Godwin - +1 for the approach. >>>>> >>>>> Thanks, >>>>> Dilini >>>>> >>>>> >>>>> On Wed, Dec 20, 2017 at 11:25 PM, Tharindu Edirisinghe < >>>>> [email protected]> wrote: >>>>> >>>>>> Hi Dilini, >>>>>> >>>>>> After adding the secondary userstore, you can find the config file >>>>>> related to that in *repository/deployment/server/userstores/* >>>>>> location. Although you have not added the regex parameters when you >>>>>> created >>>>>> the userstore from the admin service, I believe it should have added some >>>>>> default regex there. You need to check the following two properties in >>>>>> the >>>>>> file. >>>>>> >>>>>> >>>>>> >>>>>> *PasswordJavaRegExPasswordJavaScriptRegEx* >>>>>> >>>>>> You can find more information on the password pattern validation from >>>>>> [1]. >>>>>> >>>>>> [1] http://tharindue.blogspot.com/2016/08/user-password-pattern- >>>>>> regex-front-end.html >>>>>> >>>>>> Thanks, >>>>>> TharinduE >>>>>> >>>>>> On Wed, Dec 20, 2017 at 11:46 AM, Godwin Shrimal <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Hi Dilini, >>>>>>> >>>>>>> Please see my comments. >>>>>>> >>>>>>> >>>>>>> I think it makes sense to populate additional parameters in UI when >>>>>>>>>> adding user store from the management console. >>>>>>>>>> >>>>>>>>> Yes, this is handled correctly from the management console side as >>>>>>>>>> expected. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Yeah, when adding user store via admin services its bit hard to >>>>>>>>>>> add those number of optional parameters. So I propose following >>>>>>>>>>> solutions. >>>>>>>>>>> >>>>>>>>>>> 1. Improve our documentation and describe required optional >>>>>>>>>>> parameters and add a sample request with optional parameters >>>>>>>>>>> >>>>>>>>>> In this case, every time the optional properties are changed the >>>>>>>>>> doc needs to be updated and the developer needs to update the >>>>>>>>>> request too. >>>>>>>>>> >>>>>>>>> I don't think optional parameters are changing frequently, it is >>>>>>>>> something changing rearely when we need to introudce some feature to >>>>>>>>> perticluar user store. And if optional parameters added newly, >>>>>>>>> existing >>>>>>>>> request should work as expected without breaking and not MUST to add >>>>>>>>> that >>>>>>>>> parameters to request. >>>>>>>>> >>>>>>>> But, in this case it is a must to add the optional parameters in >>>>>>>> the request which is wrong. This hinders the usability aspect from the >>>>>>>> user >>>>>>>> perspective. So, IMO we should document the full request as well as >>>>>>>> handle >>>>>>>> it as per solution 2. >>>>>>>> >>>>>>> >>>>>>> As an API its not wrong not to send optional parameters, But yes. >>>>>>> Its not working as expected if we not send them. Yes, we need to fully >>>>>>> document the request with optional parameters as suggested in solution1 >>>>>>> as >>>>>>> an imidiate step. We may need implement the solution 2 in future. Lets >>>>>>> wait >>>>>>> and see the feedback from IAM team. >>>>>>> >>>>>>> >>>>>>> Thanks >>>>>>> Godwin >>>>>>> >>>>>>> >>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>>>> 2. Change backend to add default parameters (same as what we do >>>>>>>>>>> in UI) if user is not sending additional parameters in request >>>>>>>>>>> >>>>>>>>>> +1 for this solution. Here, the developer does not need to worry >>>>>>>>>> about the 100 odd optional parameters at all. If he needs to change >>>>>>>>>> few >>>>>>>>>> parameters, he can change only the required ones. >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> Godwin >>>>>>>>>>> >>>>>>>>>>> On Wed, Dec 20, 2017 at 5:00 PM, Dilini Gunatilake < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi IAM Team, >>>>>>>>>>>> >>>>>>>>>>>> I need to create a JDBC secondary user store via admin services >>>>>>>>>>>> and I configured only the mandatory parameters and sent the >>>>>>>>>>>> request. The >>>>>>>>>>>> request was successful and the user store was created. However, >>>>>>>>>>>> when I >>>>>>>>>>>> tried to add a user to that user store, it says the password >>>>>>>>>>>> length is >>>>>>>>>>>> invalid and did not let me create a user. >>>>>>>>>>>> >>>>>>>>>>>> Request: >>>>>>>>>>>> >>>>>>>>>>>> <soap:Envelope >>>>>>>>>>>> xmlns:soap="http://www.w3.org/2003/05/soap-envelope" >>>>>>>>>>>> xmlns:xsd="http://org.apache.axis2/xsd" >>>>>>>>>>>> xmlns:xsd1="http://dto.configuration.store.user.identity.carbon.wso2.org/xsd"> >>>>>>>>>>>> <soap:Header/> >>>>>>>>>>>> <soap:Body> >>>>>>>>>>>> <xsd:addUserStore> >>>>>>>>>>>> <!--Optional:--> >>>>>>>>>>>> <xsd:userStoreDTO> >>>>>>>>>>>> <!--Optional:--> >>>>>>>>>>>> >>>>>>>>>>>> <xsd1:className>org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager</xsd1:className> >>>>>>>>>>>> <!--Optional:--> >>>>>>>>>>>> <xsd1:description>created with admin >>>>>>>>>>>> services</xsd1:description> >>>>>>>>>>>> <!--Optional:--> >>>>>>>>>>>> <xsd1:disabled>false</xsd1:disabled> >>>>>>>>>>>> <!--Optional:--> >>>>>>>>>>>> >>>>>>>>>>>> <xsd1:domainId>PRIMARY-JDBC780-ATTRIBUTE-STORE</xsd1:domainId> >>>>>>>>>>>> <!--Zero or more repetitions:--> >>>>>>>>>>>> <xsd1:properties> >>>>>>>>>>>> <xsd1:name>url</xsd1:name> >>>>>>>>>>>> >>>>>>>>>>>> <xsd1:value>jdbc:mysql://localhost:3306/is520user</xsd1:value> >>>>>>>>>>>> </xsd1:properties> >>>>>>>>>>>> <xsd1:properties> >>>>>>>>>>>> <xsd1:name>userName</xsd1:name> >>>>>>>>>>>> <xsd1:value>wso2carbonxxx</xsd1:value> >>>>>>>>>>>> </xsd1:properties> >>>>>>>>>>>> <xsd1:properties> >>>>>>>>>>>> <xsd1:name>password</xsd1:name> >>>>>>>>>>>> <xsd1:value>wso2carbonxxx</xsd1:value> >>>>>>>>>>>> </xsd1:properties> >>>>>>>>>>>> <xsd1:properties> >>>>>>>>>>>> <xsd1:name>driverName</xsd1:name> >>>>>>>>>>>> <xsd1:value>com.mysql.jdbc.Driver</xsd1:value> >>>>>>>>>>>> </xsd1:properties> >>>>>>>>>>>> <xsd1:properties> >>>>>>>>>>>> <xsd1:name>CountRetrieverClass</xsd1:name> >>>>>>>>>>>> >>>>>>>>>>>> <xsd1:value>org.wso2.carbon.identity.user.store.count.jdbc.JDBCUserStoreCountRetriever</xsd1:value> >>>>>>>>>>>> </xsd1:properties> >>>>>>>>>>>> </xsd:userStoreDTO> >>>>>>>>>>>> </xsd:addUserStore> >>>>>>>>>>>> </soap:Body> >>>>>>>>>>>> </soap:Envelope> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> This may be because I haven't configured the optional >>>>>>>>>>>> parameters such as username/password regex etc. in the request. >>>>>>>>>>>> But, IMO >>>>>>>>>>>> the request should work successfully with only mandatory >>>>>>>>>>>> parameters. >>>>>>>>>>>> >>>>>>>>>>>> If I do the same via management console, the additional >>>>>>>>>>>> parameters will be populated in the UI and saved in the xml when >>>>>>>>>>>> we save >>>>>>>>>>>> the configuration. >>>>>>>>>>>> >>>>>>>>>>>> If a developer needs to create a user store via admin services, >>>>>>>>>>>> how can the developer achieve this? If the developer needs to >>>>>>>>>>>> configure >>>>>>>>>>>> optional parameters, there are around 100 parameters. What are the >>>>>>>>>>>> must >>>>>>>>>>>> have additional parameters the user needs to configure or what is >>>>>>>>>>>> the best >>>>>>>>>>>> way to handle this? >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> Dilini >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> >>>>>>>>>>>> *Dilini GunatilakeSoftware Engineer - QA Team* >>>>>>>>>>>> Mobile : +94771162518 <+94%2077%20116%202518> >>>>>>>>>>>> [email protected] >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> *Godwin Amila Shrimal* >>>>>>>>>>> Associate Technical Lead >>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>> >>>>>>>>>>> mobile: *+94772264165* >>>>>>>>>>> linkedin: *https://www.linkedin.com/in/godwin-amila-2ba26844/ >>>>>>>>>>> <https://www.linkedin.com/in/godwin-amila-2ba26844/>* >>>>>>>>>>> twitter: https://twitter.com/godwinamila >>>>>>>>>>> <http://wso2.com/signature> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> >>>>>>>>>> *Dilini GunatilakeSoftware Engineer - QA Team* >>>>>>>>>> Mobile : +94771162518 <+94%2077%20116%202518> >>>>>>>>>> [email protected] >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Godwin Amila Shrimal* >>>>>>>>> Associate Technical Lead >>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>> lean.enterprise.middleware >>>>>>>>> >>>>>>>>> mobile: *+94772264165* >>>>>>>>> linkedin: *https://www.linkedin.com/in/godwin-amila-2ba26844/ >>>>>>>>> <https://www.linkedin.com/in/godwin-amila-2ba26844/>* >>>>>>>>> twitter: https://twitter.com/godwinamila >>>>>>>>> <http://wso2.com/signature> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> *Dilini GunatilakeSoftware Engineer - QA Team* >>>>>>>> Mobile : +94771162518 <+94%2077%20116%202518> >>>>>>>> [email protected] >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Godwin Amila Shrimal* >>>>>>> Associate Technical Lead >>>>>>> WSO2 Inc.; http://wso2.com >>>>>>> lean.enterprise.middleware >>>>>>> >>>>>>> mobile: *+94772264165* >>>>>>> linkedin: *https://www.linkedin.com/in/godwin-amila-2ba26844/ >>>>>>> <https://www.linkedin.com/in/godwin-amila-2ba26844/>* >>>>>>> twitter: https://twitter.com/godwinamila >>>>>>> <http://wso2.com/signature> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Dev mailing list >>>>>>> [email protected] >>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> Tharindu Edirisinghe >>>>>> Senior Software Engineer | WSO2 Inc >>>>>> Platform Security Team >>>>>> Blog : http://tharindue.blogspot.com >>>>>> mobile : +94 775181586 <+94%2077%20518%201586> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> *Dilini GunatilakeSoftware Engineer - QA Team* >>>>> Mobile : +94771162518 <+94%2077%20116%202518> >>>>> [email protected] >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> [email protected] >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> Sherene Mahanama >>>> Technical Writer >>>> >>>> WSO2 (pvt.) Ltd. >>>> Colombo, Sri Lanka >>>> Mobile: (+94) 777 <%28%2B94%29%20773131798> >>>> *994805* >>>> >>> >>> >>> >>> -- >>> Best Regards, >>> >>> >>> *Chankami Maddumage* >>> Software Engineer - QA Team >>> WSO2 Inc; http://www.wso2.com/. >>> Mobile: +94 (0) 722223096 <%2B94%20%280%29%20773%20381%20250> >>> >>> >> >> >> -- >> Sherene Mahanama >> Technical Writer >> >> WSO2 (pvt.) Ltd. >> Colombo, Sri Lanka >> Mobile: (+94) 777 <%28%2B94%29%20773131798> >> *994805* >> > > > > -- > Sathya Bandara > Software Engineer > WSO2 Inc. http://wso2.com > Mobile: (+94) 715 360 421 <+94%2071%20411%205032> > > <+94%2071%20411%205032> > -- Best Regards, *Chankami Maddumage* Software Engineer - QA Team WSO2 Inc; http://www.wso2.com/. Mobile: +94 (0) 722223096 <%2B94%20%280%29%20773%20381%20250>
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
