Manage Spectrum users via RESTful API - examples
search cancel

Manage Spectrum users via RESTful API - examples

book

Article ID: 116305

calendar_today

Updated On:

Products

CA Spectrum DX NetOps

Issue/Introduction

I have a requirement to automatically manage my users/roles. Can this be leveraged through the REST API? 

Environment

Release: All Supported Releases

Component: SPCAPP - Spectrum Applications

Resolution

The following are some Restful examples for managing Spectrum Users. Using a RESTful client, connect to the OneClick server as per the following URLs.

 

Create a user by issuing the following as a POST request: 

     http://<OC_HOST:OC_PORT>/spectrum/restful/model?landscapeid=<ls_handle>&mtypeid=0x10004&attr=0x1006e&val=<username

 

Delete the user using a DELETE request: 

     http://<OC_HOST:OC_PORT>/spectrum/restful/model/<user_model_handle> 

 

Associate user with a role using a POST request: 

     http://<OC_HOST:OC_PORT>/spectrum/restful/associations/relation/0x10031/leftmodel/<user_role_handle>/rightmodel/<user_model_handle

 

where 0x10031 = user role association 


Use Spectrum CLI to obtain the User_Role_handles:

cd /vnmsh
./connect
./show models | grep -i LicenseRole

User_role_handle is shown in left column:

User roles: 

     0x100016 Operator        0x10453 LicenseRole 

     0x100015 Administrator   0x10453 LicenseRole 

     0x100012 Service Manager 0x10453 LicenseRole 

 

Create user Group: 

     http://OC_HOST:OC_PORT>/spectrum/restful/model?landscapeid=<ls_handle>&mtypeid=0x1040a&attr=0x1006e&val=<groupname

 

Associate user with group: 

     http://<OC_HOST:OC_PORT>/spectrum/restful/associations/relation/0x10022/leftmodel/<group_handle>/rightmodel/<user_model_handle

 

where 0x10022 = Has_Member association 

 

Get user role: 

     http://<OC_HOST:OC_PORT>/spectrum/restful/associations/relation/0x00010031/model/<user_model_handle>?side=right 

 

Get list of users model handles: 

POST request http://localhost/spectrum/restful/models with the following XML POST body will get you the list of users. 

 

<?xml version="1.0" encoding="UTF-8"?> 

<rs:model-request throttlesize="5" 

xmlns:rs="http://www.ca.com/spectrum/restful/schema/request

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance

xsi:schemaLocation="http://www.ca.com/spectrum/restful/schema/request ../../../xsd/Request.xsd "> 

<rs:target-models> 

 <rs:models-search> 

  <rs:search-criteria xmlns="http://www.ca.com/spectrum/restful/schema/filter"> 

   <filtered-models> 

      <equals> 

           <attribute id="AttributeID.MTYPE_HANDLE"> 

                 <value>0x10004</value> <!-- USER --> 

           </attribute> 

      </equals> 

   </filtered-models> 

  </rs:search-criteria> 

 </rs:models-search> 

</rs:target-models> 

</rs:model-request>