This documentation is for WSO2 Identity Server 5.2.0. View documentation for the latest release.
Managing Permissions with APIs - Identity Server 5.2.0 - WSO2 Documentation
||
Skip to end of metadata
Go to start of metadata

The following section describes the RemoteAuthorizationManager API and the operations that come with it. 

Permissions can be assigned to user roles. The permission is an authorization to perform a specific action on a resource. For instance, a user role can have permission (i.e., authorization) to add and delete (i.e., actions) service providers (i.e., the resource). The following set of actions can be performed on a resource.

  • get
  • add
  • delete
  • edit
  • login
  • man_config
  • man_lc_config
  • man_sec
  • up_serv
  • man_serv
  • man_media
  • mon_sys
  • del_id
  • authorize
  • inv_ser
  • ui_execute 
  • subscribe
  • publish
  • consume
  • change_permission
  • browse
  • sqs_send_message
  • sqs_receive_message
  • sqs_delete_message
  • sqs_change_message_visibility
  • sqs_get_queue_attributes

The following operations are available in this API:

authorizeRole

This function authorizes the given role to perform the specified action on the given resource.

Input parameters

ParameterDescription
roleNameThe name of the role (e.g., "role1")
resourceIdThe resource path (e.g., "/permission/admin/login")
actionThe action name of the action to be performed on the resource (e.g., "ui.execute")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:authorizeRole>
   <!­­--Optional:­­-->
   <ser:roleName>role1</ser:roleName>
   <!--­­Optional:­­-->
   <ser:resourceId>/permission/admin/login</ser:resourceId>
   <!--­­Optional:­­-->
   <ser:action>ui.execute</ser:action>
  </ser:authorizeRole>
 </soapenv:Body>
</soapenv:Envelope>
No response on Success

clearAllRoleAuthorization

This function clears all authorizations of the role.

Input parameters

ParameterDescription
roleNameThe name of the role (e.g., "role1")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:clearAllRoleAuthorization>
   <!­­--Optional:­­-->
   <ser:roleName>role1</ser:roleName>
  </ser:clearAllRoleAuthorization>
 </soapenv:Body>
</soapenv:Envelope>
No response on Success

clearResourceAuthorizations

This function clears all the authorizations for the given resource.

Input parameters

ParameterDescription
resourceIdThe resource path (e.g., "/permission/admin/login")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:clearResourceAuthorizations>
   <!--­­Optional:­­-->
   <ser:resourceId>/permission/admin/login</ser:resourceId>
  </ser:clearResourceAuthorizations>
 </soapenv:Body>
</soapenv:Envelope>
No response on Success

clearRoleActionOnAllResources

This function removes the authorization from the role to perform the specified action on all the resources.

Input parameters

ParameterDescription
actionThe action name of the action to be performed on the resource (e.g., "ui.execute")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:clearRoleActionOnAllResources>
   <!--­­Optional:­­-->
   <ser:action>ui.execute</ser:action>
  </ser:clearRoleActionOnAllResources>
 </soapenv:Body>
</soapenv:Envelope>
No response on Success

clearRoleAuthorization

This function clear the authorization of the specified role to perform the given action on the resource.

Input parameters

ParameterDescription
roleNameThe name of the role (e.g., "role1")
resourceIdThe resource path (e.g., "/permission/admin/login")
actionThe action name of the action to be performed on the resource (e.g., "ui.execute")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:clearRoleAuthorization>
   <!­­--Optional:­­-->
   <ser:roleName>role1</ser:roleName>
   <!--­­Optional:­­-->
   <ser:resourceId>/permission/admin/login</ser:resourceId>
   <!--­­Optional:­­-->
   <ser:action>ui.execute</ser:action>
  </ser:clearRoleAuthorization>
 </soapenv:Body>
</soapenv:Envelope>
No response on Success

denyRole

This function removes the authorization of the role to perform the given action on the specified resource.

Input parameters

ParameterDescription
roleNameThe name of the role (e.g., "role1")
resourceIdThe resource path (e.g., "/permission/admin/login")
actionThe action name of the action to be performed on the resource (e.g., "ui.execute")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:denyRole>
   <!­­--Optional:­­-->
   <ser:roleName>role1</ser:roleName>
   <!--­­Optional:­­-->
   <ser:resourceId>/permission/admin/login</ser:resourceId>
   <!--­­Optional:­­-->
   <ser:action>ui.execute</ser:action>
  </ser:denyRole>
 </soapenv:Body>
</soapenv:Envelope>
No response on Success

getAllowedRolesForResource

This function retrieves the list of authorized roles to perform the given action on the specified resource.

Input parameters

ParameterDescription
resourceIdThe resource path (e.g., "/permission/admin/login")
actionThe action name of the action to be performed on the resource (e.g., "ui.execute")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:getAllowedRolesForResource>
   <!--­­Optional:­­-->
   <ser:resourceId>/permission/admin/login</ser:resourceId>
   <!--­­Optional:­­-->
   <ser:action>ui.execute</ser:action>
  </ser:getAllowedRolesForResource>
 </soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Body>
  <ns:getAllowedRolesForResourceResponse xmlns:ns="http://service.ws.um.carbon.wso2.org"
xmlns:ax2599="http://core.user.carbon.wso2.org/xsd"
xmlns:ax2600="http://api.user.carbon.wso2.org/xsd">
   <ns:return>admin</ns:return>
   <ns:return>myrole</ns:return>
  </ns:getAllowedRolesForResourceResponse>
 </soapenv:Body>
</soapenv:Envelope>

getAllowedUIResourcesForUser

This function retrieves the list of UI resources in the specified root patch for which the user has authorization. 

Input parameters

ParameterDescription
userNameThe username of the specific user (e.g., "admin")
permissionRootPathThe permission root path



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:getAllowedUIResourcesForUser>
   <!--­­Optional:­­-->
   <ser:userName>admin</ser:userName>
   <!--­­Optional:­­-->
   <ser:permissionRootPath>/</ser:permissionRootPath>
  </ser:getAllowedUIResourcesForUser>
 </soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Body>
  <ns:getAllowedUIResourcesForUserResponse xmlns:ns="http://service.ws.um.carbon.wso2.org"
xmlns:ax2599="http://core.user.carbon.wso2.org/xsd"
xmlns:ax2600="http://api.user.carbon.wso2.org/xsd">
   <ns:return>/permission</ns:return>
   <ns:return>/permission/admin/configure/</ns:return>
   <ns:return>/permission/admin/login/</ns:return>
   <ns:return>/permission/admin/manage/</ns:return>
   <ns:return>/permission/admin/monitor/</ns:return>
   <ns:return>/permission/protected/</ns:return>
   <ns:return>/permission/testlogin/</ns:return>
  </ns:getAllowedRolesForResourceResponse>
 </soapenv:Body>
</soapenv:Envelope>

isRoleAuthorized

This function checks whether the given role is authorized to perform the action on the specified resource.

Input parameters

ParameterDescription
roleNameThe name of the role (e.g., "role1")
resourceIdThe resource path (e.g., "/permission/admin/login")
actionThe action name of the action to be performed on the resource (e.g., "ui.execute")



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://service.ws.um.carbon.wso2.org">
 <soapenv:Header/>
 <soapenv:Body>
  <ser:isRoleAuthorized>
   <!­­--Optional:­­-->
   <ser:roleName>role1</ser:roleName>
   <!--­­Optional:­­-->
   <ser:resourceId>/permission/admin/login</ser:resourceId>
   <!--­­Optional:­­-->
   <ser:action>ui.execute</ser:action>
  </ser:isRoleAuthorized>
 </soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Body>
  <ns:isRoleAuthorized xmlns:ns="http://service.ws.um.carbon.wso2.org">
   <ns:return>false</ns:return>
  </ns:isRoleAuthorized>
 </soapenv:Body>
</soapenv:Envelope>
  • No labels