+1. I updated all the kernel components to refer to user.api - and fixed the operations like this..
I will send a full update shortly.. Thanks & regards, -Prabath On Mon, Jul 15, 2013 at 12:22 PM, Amila Suriarachchi <[email protected]> wrote: > > > > On Mon, Jul 15, 2013 at 10:49 AM, Prabath Siriwardena <[email protected]>wrote: > >> >> >> On Mon, Jul 15, 2013 at 10:38 AM, Amila Suriarachchi <[email protected]>wrote: >> >>> >>> >>> >>> Here is another example. Registry has following method. This method is >>> used to check whether a given user in admin role and allow some permissions >>> (see the usage of this method) to user. If we have an hasRole method as in >>> here[1] we shall not require this method and code would have written as >>> >>> userRealm.hasRole(userName, "admin"); >>> >> >> >> We have the method, isUserHasRole(User, Role) in UserStoreManager. >> Having this in UserRealm is not that meaningful. >> > > yes. Then registry should have used that. > > thanks, > Amila. > >> >> Thanks & regards, >> -Prabath >> >> >>> >>> public static boolean hasAdminAuthorizations(String userName, UserRealm >>> userRealm) >>> throws RegistryException { >>> >>> try { >>> UserStoreManager userStoreReader = >>> userRealm.getUserStoreManager(); >>> >>> RealmConfiguration realmConfig; >>> try { >>> realmConfig = userRealm.getRealmConfiguration(); >>> } catch (UserStoreException e) { >>> String msg = "Failed to retrieve realm configuration."; >>> log.error(msg, e); >>> throw new RegistryException(msg, e); >>> } >>> String systemUser = CarbonConstants.REGISTRY_SYSTEM_USERNAME; >>> >>> if (systemUser.equals(userName)) { >>> return true; >>> } >>> >>> String adminUser = realmConfig.getAdminUserName(); >>> if (adminUser.equals(userName)) { >>> return true; >>> } >>> >>> String[] roles = userStoreReader.getRoleListOfUser(userName); >>> String adminRoleName = realmConfig.getAdminRoleName(); >>> if (containsString(adminRoleName, roles)) { >>> return true; >>> } >>> >>> } catch (UserStoreException e) { >>> >>> String msg = "Failed to check authorization level of user " + >>> userName + ". Caused by: " + e.getMessage(); >>> log.error(msg, e); >>> throw new RegistryException(msg, e); >>> } >>> >>> return false; >>> } >>> >>> thanks, >>> Amila. >>> >>> >>> [1] >>> http://tomcat.apache.org/tomcat-5.5-doc/catalina/docs/api/org/apache/catalina/Realm.html >>> >>>> >>>> With C5 we can keep such a simple API at core level and put admin >>>> functionality to carbon components. >>>> >>>> thanks, >>>> Amila. >>>> >>>> >>>> [1] >>>> http://tomcat.apache.org/tomcat-5.5-doc/catalina/docs/api/org/apache/catalina/Realm.html >>>> >>>>> >>>>> Thanks & regards, >>>>> -Prabath >>>>> >>>>> >>>>> On Thu, Jul 11, 2013 at 12:42 PM, Amila Suriarachchi >>>>> <[email protected]>wrote: >>>>> >>>>>> >>>>>> >>>>>> >>>>>> On Thu, Jul 11, 2013 at 10:21 AM, Prabath Siriwardena < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> UserStoreManager API is not clean at all.. There so many stuff can >>>>>>> remove... Also maintain two interfaces one in the core and another in >>>>>>> API. >>>>>>> We need to get rid of the interface in core.. >>>>>>> >>>>>>> On Thu, Jul 11, 2013 at 10:06 AM, Asela Pathberiya >>>>>>> <[email protected]>wrote: >>>>>>> >>>>>>>> Hi All, >>>>>>>> >>>>>>>> I am not sure why we are keeping following method in the API... >>>>>>>> Sorry, if i have missed any thing.... If there are on any usage, we >>>>>>>> can >>>>>>>> remove them... >>>>>>>> >>>>>>>> 1. String[] getAllSecondaryRoles() >>>>>>>> >>>>>>>> Why we need only the roles of secondary user store? >>>>>>>> >>>>>>> >>>>>>> This is useful.. In a multi-tenanted environment - primary user >>>>>>> store is governed by the super tenant.. It's also better to have a >>>>>>> method >>>>>>> getRoles(String userStoreDomain). >>>>>>> >>>>>> >>>>>> This is wrong. You should not try to get the roles from the >>>>>> UserStore. Roles has to come from the Authorization manager. >>>>>> >>>>>> thanks, >>>>>> Amila. >>>>>> >>>>>>> >>>>>>> Thanks & regards, >>>>>>> -Prabath >>>>>>> >>>>>>> >>>>>>>> >>>>>>>> 2. int getTenantId(String username) >>>>>>>> >>>>>>>> Once user is authenticated, we knows the tenant Id. Else why we >>>>>>>> need to get the tenant id of a user who is not in its tenant space ? >>>>>>>> >>>>>>>> 3. int getUserId(String username) >>>>>>>> >>>>>>>> What is the use of user id? It seems to this is >>>>>>>> auto increment value of UM_USER table >>>>>>>> >>>>>>>> 4. int getTenantId() >>>>>>>> >>>>>>>> I guess, tenant Id is not need to expose via user store manager >>>>>>>> API, it is available with carbon context >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Asela. >>>>>>>> >>>>>>>> -- >>>>>>>> Thanks & Regards, >>>>>>>> Asela >>>>>>>> >>>>>>>> Mobile : +94 777 625 933 >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Thanks & Regards, >>>>>>> Prabath >>>>>>> >>>>>>> Mobile : +94 71 809 6732 >>>>>>> >>>>>>> http://blog.facilelogin.com >>>>>>> http://RampartFAQ.com >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Dev mailing list >>>>>>> [email protected] >>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Amila Suriarachchi* >>>>>> >>>>>> Software Architect >>>>>> WSO2 Inc. ; http://wso2.com >>>>>> lean . enterprise . middleware >>>>>> >>>>>> phone : +94 71 3082805 >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Thanks & Regards, >>>>> Prabath >>>>> >>>>> Mobile : +94 71 809 6732 >>>>> >>>>> http://blog.facilelogin.com >>>>> http://RampartFAQ.com >>>>> >>>> >>>> >>>> >>>> -- >>>> *Amila Suriarachchi* >>>> >>>> Software Architect >>>> WSO2 Inc. ; http://wso2.com >>>> lean . enterprise . middleware >>>> >>>> phone : +94 71 3082805 >>>> >>> >>> >>> >>> -- >>> *Amila Suriarachchi* >>> >>> Software Architect >>> WSO2 Inc. ; http://wso2.com >>> lean . enterprise . middleware >>> >>> phone : +94 71 3082805 >>> >> >> >> >> -- >> Thanks & Regards, >> Prabath >> >> Mobile : +94 71 809 6732 >> >> http://blog.facilelogin.com >> http://RampartFAQ.com >> > > > > -- > *Amila Suriarachchi* > > Software Architect > WSO2 Inc. ; http://wso2.com > lean . enterprise . middleware > > phone : +94 71 3082805 > -- Thanks & Regards, Prabath Mobile : +94 71 809 6732 http://blog.facilelogin.com http://RampartFAQ.com
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
