Can we also have test case for this fix please? On Wed, Oct 14, 2015 at 6:13 PM, Isura Karunaratne <is...@wso2.com> wrote:
> Hi, > > This issue is fixed in [1]. > > > Thanks > isura > > > [1] https://wso2.org/jira/browse/CARBON-15517 > > > On Wed, Oct 14, 2015 at 11:25 AM, Johann Nallathamby <joh...@wso2.com> > wrote: > >> Hi Isura, >> >> Can you look into this issue urgently. I remember you fixing an issue >> related to this. >> >> Thanks. >> >> On Wed, Oct 14, 2015 at 7:16 AM, Indika Sampath <indi...@wso2.com> wrote: >> >>> Hi All, >>> >>> I debug code of our and found issue. It seems implementation of some API >>> changed in user-core. Let me explain the flow. >>> >>> Our queue/topic creation has two call. >>> >>> 1. We create internal role when adding queue and assign >>> "changePermission", "publish", "consume" permissions to it. Which means >>> that, user who created particular queue can update permission, publish or >>> consume. >>> >>> - Below code line used to get internal role name: >>> >>> UserCoreUtil.addInternalDomainName(QUEUE_ROLE_PREFIX + >>> queueName.replace(".","-").replace("/", "-")) >>> >>> result = {java.lang.String@10289}"*Internal/Q_userQueue*" >>> value = {char[21]@10290} >>> hash = 0 >>> hash32 = 0 >>> >>> - assign permission as below: >>> >>> userStoreManager.addRole(roleName, user, null); >>> userRealm.getAuthorizationManager().authorizeRole(roleName, queueId, >>> PERMISSION_CHANGE_PERMISSION); >>> userRealm.getAuthorizationManager().authorizeRole(roleName, queueId, >>> TreeNode.Permission.CONSUME.toString().toLowerCase()); >>> userRealm.getAuthorizationManager().authorizeRole(roleName, queueId, >>> TreeNode.Permission.PUBLISH.toString().toLowerCase()); >>> >>> 2. User can select some other role listed in in queue add page. He can >>> select these role when adding queue or later by updating queue. So in >>> update permission we checked whether any of user's role has above assign >>> change permission. >>> >>> - get role list of user: >>> >>> userRealm.getUserStoreManager().getRoleListOfUser(loggedInUser) >>> >>> result = {java.lang.String[3]@9689} >>> [0] = {java.lang.String@9690}"*Internal/Q_userQueue*" >>> [1] = {java.lang.String@9691}"Internal/everyone" >>> [2] = {java.lang.String@9692}"role1" >>> >>> - check whether any of role has change permission >>> >>> for (String userRole : userRoles) { >>> if >>> (userRealm.getAuthorizationManager().isRoleAuthorized(userRole, queueID, >>> PERMISSION_CHANGE_PERMISSION)) { >>> isUserHasChangePermission = true; >>> } >>> } >>> >>> Issue is above check false for all roles. But we assigned change >>> permission to *Internal/Q_userQueue* role when creating queue. >>> >>> 3. Next I evaluate below code line to check whether which role has >>> change permission to queueID. Result is as below: >>> >>> userRealm.getAuthorizationManager().getAllowedRolesForResource(queueID, >>> PERMISSION_CHANGE_PERMISSION) >>> >>> result = {java.lang.String[1]@9694} >>> [0] = {java.lang.String@9686}"*INTERNAL/Q_userQueue*" >>> >>> Result has different role name. We created role name called >>> *Internal/Q_userQueue* and assign permissions but it has created with >>> different name *INTERNAL/Q_userQueue* and assign permission. >>> >>> Please have look into this because it is blocking issue to our >>> implementation. >>> >>> Cheers! >>> >>> >>> On Tue, Oct 13, 2015 at 5:22 PM, Kishanthan Thangarajah < >>> kishant...@wso2.com> wrote: >>> >>>> Was this issue found in 4.4.2 RC1 too? >>>> >>>> On Tue, Oct 13, 2015 at 4:58 PM, Sasikala Kottegoda <sasik...@wso2.com> >>>> wrote: >>>> >>>>> Hi Manuri, >>>>> >>>>> We tested MB 3.0.0 with this release and our scenario of queue >>>>> creation fails after giving a permission denied error. The scenario is as >>>>> follows: >>>>> >>>>> 1. Create a user "user1" with a role assigned with permission to >>>>> create queues. >>>>> 2. Login from "user1" and try to create a queue, we get a permission >>>>> denied error. >>>>> >>>>> When creating a queue the following happens from our code. >>>>> >>>>> 1. We create an internal role for the queue and assign it to the >>>>> current user with permissions assigned. >>>>> >>>>> userRealm.getAuthorizationManager().authorizeRole(roleName, queueId, >>>>> >>>>> PERMISSION_CHANGE_PERMISSION); >>>>> >>>>> 2. Next, we create the queue and update permissions for the queue. In >>>>> this step, we check if the current user has permissions to change the >>>>> queue. >>>>> >>>>> String[] userRoles = >>>>> userRealm.getUserStoreManager().getRoleListOfUser(loggedInUser); >>>>> for (String userRole : userRoles) { >>>>> if (userRealm.getAuthorizationManager().isRoleAuthorized( >>>>> userRole, queueID, PERMISSION_CHANGE_PERMISSION)) { >>>>> isUserHasChangePermission = true; >>>>> } >>>>> } >>>>> >>>>> At this stage, *'*(userRealm.getAuthorizationManager().isRoleAuthorized( >>>>> userRole, queueID, PERMISSION_CHANGE_PERMISSION))' false >>>>> implying that any of roles assigned to the user do not have permissions >>>>> to change the queue, thus not allowing the user to create the queue. >>>>> >>>>> >>>>> Thank you >>>>> >>>>> >>>>> On Mon, Oct 12, 2015 at 9:24 PM, Manuri Amaya Perera <manu...@wso2.com >>>>> > wrote: >>>>> >>>>>> Hi Devs, >>>>>> >>>>>> WSO2 Carbon Kernel 4.4.2 RC2 Release Vote. >>>>>> >>>>>> This release fixes the following issues: >>>>>> https://wso2.org/jira/issues/?filter=12396 >>>>>> >>>>>> Please download and test your products with kernel 4.4.2 RC2 and >>>>>> vote. Vote will be open for 72 hours or longer as needed. >>>>>> >>>>>> *​Source and binary distribution files:* >>>>>> https://svn.wso2.org/repos/wso2/people/aruna/v4.4.2-rc2 >>>>>> >>>>>> *Maven staging repository:* >>>>>> http://maven.wso2.org/nexus/content/repositories/orgwso2carbon-019/ >>>>>> >>>>>> *The tag to be voted upon:* >>>>>> https://github.com/wso2/carbon-kernel/tree/v4.4.2-rc2 >>>>>> >>>>>> >>>>>> [ ] Broken - do not release (explain why) >>>>>> [ ] Stable - go ahead and release >>>>>> >>>>>> >>>>>> Thank you >>>>>> Carbon Team >>>>>> >>>>>> -- >>>>>> >>>>>> *Manuri Amaya Perera* >>>>>> >>>>>> *Software Engineer* >>>>>> >>>>>> *WSO2 Inc.* >>>>>> >>>>>> *Blog: http://manuriamayaperera.blogspot.com >>>>>> <http://manuriamayaperera.blogspot.com>* >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> Dev@wso2.org >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Sasikala Kottegoda >>>>> *Software Engineer* >>>>> WSO2 Inc., http://wso2.com/ >>>>> lean. enterprise. middleware >>>>> Mobile: +94 774835928/712792401 >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> Dev@wso2.org >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Kishanthan Thangarajah* >>>> Associate Technical Lead, >>>> Platform Technologies Team, >>>> WSO2, Inc. >>>> lean.enterprise.middleware >>>> >>>> Mobile - +94773426635 >>>> Blog - *http://kishanthan.wordpress.com >>>> <http://kishanthan.wordpress.com>* >>>> Twitter - *http://twitter.com/kishanthan >>>> <http://twitter.com/kishanthan>* >>>> >>>> _______________________________________________ >>>> Dev mailing list >>>> Dev@wso2.org >>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>> >>>> >>> >>> >>> -- >>> Indika Sampath >>> Senior Software Engineer >>> WSO2 Inc. >>> http://wso2.com >>> >>> Phone: +94 716 424 744 >>> Blog: http://indikasampath.blogspot.com/ >>> >>> >> >> >> -- >> Thanks & Regards, >> >> *Johann Dilantha Nallathamby* >> Technical Lead & Product Lead of WSO2 Identity Server >> Governance Technologies Team >> WSO2, Inc. >> lean.enterprise.middleware >> >> Mobile - *+94777776950* >> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>* >> > > > > -- > Isura Dilhara Karunaratne > Senior Software Engineer > > Mob +94 772 254 810 > > -- *Kishanthan Thangarajah* Associate Technical Lead, Platform Technologies Team, WSO2, Inc. lean.enterprise.middleware Mobile - +94773426635 Blog - *http://kishanthan.wordpress.com <http://kishanthan.wordpress.com>* Twitter - *http://twitter.com/kishanthan <http://twitter.com/kishanthan>*
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev