Boost strap your start with identity application REST API:
If you want to play out with NetIQ rest API within identity application (IDMProv), you can see a few examples here:
these are the rest API protected by Oauth2 Authorization (resource owner password credentials grant):
The first step is to obtain token: ( you must have enabled client "rbpm" in the OSPF for the resource owner password credential grant) flow:
An example is taken in c#: (postman)
Get an access token:
var client = new RestClient("https://<your host>/osp/a/idm/auth/oauth2/grant");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddHeader("Authorization", "Basic Basic bas64 encoded string clientid<rbpm>:clientsecret>");
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddParameter("grant_type", "password");
request.AddParameter("client_id", "rbpm");
request.AddParameter("username", "ldap DN of authorizied user");
request.AddParameter("password", "ldap password for authorized user");
request.AddParameter("client_secret", "password of clientid(rbpm)");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
once you acquired access_token;
Use it as a bearer token to test it with getting driver list API
https://<your host>/IDMProv/rest/admin/driver
var client = new RestClient("https://<host>/IDMProv/rest/admin/driver");
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "bearer <acess_token>");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
How to get a new access token from refresh token?
var client = new RestClient("https://<your host>/osp/a/idm/auth/oauth2/grant");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddHeader("Authorization", "Basic bas64 encoded string clientid:clientsecret");
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddParameter("grant_type", "refresh_token");
request.AddParameter("client_id", "rbpm");
request.AddParameter("client_secret", "secret of rbpm clientid");
request.AddParameter("refresh_token", "<refresh_token>");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
More info:
https://www.netiq.com/documentation/identity-manager-developer/rest-api-documentation/idmappsdoc/#/
Comments