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+with+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>
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
