How to limit the script runner fragments to a particular user or a user group?

Veera rdy January 26, 2018

Hello,

For the Script fragments there's an option to specify the condition. Is it possible to specify users/user groups in the conditions?

 

Thank you.

1 answer

1 accepted

5 votes
Answer accepted
Alexey Matveev
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 26, 2018

You can write a condition like this

import com.atlassian.jira.component.ComponentAccessor
def currentUser = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
return ComponentAccessor.getGroupManager().isUserInGroup(currentUser,"jira-administrators")

It would check that the current user belongs to jira-administrators group.

Veera rdy January 29, 2018

Thanks Alexey, the script works.

Chhaya Gadade January 16, 2020

Thanks Alexey..this works for me

Zita Bagi
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 28, 2020

Thnx, @Alexey Matveev -cPrime- this was very helpful!

Rexel USA October 26, 2020

How would you apply this to a specific user?

Thanks.

Alex
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
September 28, 2023

@Alexey Matveev Hi! 

Please tell me how this script can be applied if the current user is a member of one of the groups (list) I'm new to this. I wrote a script something like:

 

import com.atlassian.jira.component.ComponentAccessor

def currentUser = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()

def groupManager = ComponentAccessor.getGroupManager()

def groupName = ["adm", "jira-administrators"]

if(groupManager.getGroupNamesForUser(currentUser).containsAll(groupName.any()) ){

true

}

else {

false

}

 

 

but it doesn't work... Could you help me ? Very grateful

Suggest an answer

Log in or Sign up to answer