[
https://issues.apache.org/jira/browse/RANGER-2512?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Velmurugan Periasamy updated RANGER-2512:
-----------------------------------------
Fix Version/s: (was: 2.0.0)
> RangerRolesRESTClient for fetching roles by user and groups
> -----------------------------------------------------------
>
> Key: RANGER-2512
> URL: https://issues.apache.org/jira/browse/RANGER-2512
> Project: Ranger
> Issue Type: Bug
> Components: Ranger
> Affects Versions: 2.0.0
> Reporter: Ramesh Mani
> Assignee: Ramesh Mani
> Priority: Major
>
> RangerRolesRESTClient for fetching roles by user and groups
> RESTful end points for this apis:
> {code:java}
> /service/roles/roles/username/{userName}
> /service/roles/roles/groupname/{groupName}
> /service/roles/roles/usergroups?userName={userName1}&groupName={groupName1}it&groupName={groupName2}"
> {code}
> API signature would be
> {code:java}
> public Set<RangerRole> getRolesByUserName(String userName)
> public Set<RangerRole> getRolesByGroupName(String groupName)
> public Set<RangerRole> getRolesByUserGroups(String userName, List<String>
> groupNames)
> {code}
> Client call for this would be :
> {code:java}
> // url -> Ranger Admin url
> // sslFile -> file location with SSL config when ranger is in SSL mode.
> RangerRolesRESTClient rangerRolesRESTClient = new
> RangerRolesRESTClient(url,sslFile);
> if (StringUtils.isNotEmpty(userName) &&
> StringUtils.isEmpty(groupName)) {
> Set<RangerRole> roles =
> rangerRolesRESTClient.getRolesByUserName(userName);
> System.out.println("Roles for user:" + userName + " => " +
> roles);
> }
> if (StringUtils.isNotEmpty(groupName) &&
> StringUtils.isEmpty(userName)) {
> Set<RangerRole>roles =
> rangerRolesRESTClient.getRolesByGroupName(groupName);
> System.out.println("Roles for group:" + groupName + " => " +
> roles);
> }
> if (StringUtils.isNotEmpty(userName) &&
> CollectionUtils.isNotEmpty(groupList)) {
> Set<RangerRole> roles =
> rangerRolesRESTClient.getRolesByUserGroups(userName,groupList);
> System.out.println("Roles for user: " + userName + " groups:
> " + groupList + " => " + roles);
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)