Knowledge Partner
Knowledge Partner
571 views

createResource SOAP call

I was looking at the Resource service WSDL at the createResourceRequest,
and I do not see how you specify a Resource container can be specified
when creating it.

In the createRoleRequest, there is a line:
<ser:container>?</ser:container>

Which seems to be the name of the container. (I hope... Did not test
yet, might be cn=ContainerName, or just ContainerName).

But I do not see the same in the WSDL generated by a 4.5 user app. (Did
not try getting one from a 4.5.2 (if someone has a 4.5.2 resource
service WSDL handy and can open it in SOAP UI that would be mighty handy
to confirm if 4.5 vs 4.5.2 matters) yet, but is it possible via SOAP to
make a Resource in a sub container? If so, how?
Labels (1)
0 Likes
11 Replies
ScorpionSting Absent Member.
Absent Member.

Re: createResource SOAP call


Shared the complete 4.5.2 wsdl with you via Google Drive


--
-"Also now available in 'G+'
(http://plus.google.com/+BenWalter-Kiwi) and 'Website'
(https://www.isam.kiwi/) format".- 😉
------------------------------------------------------------------------
ScorpionSting's Profile: https://forums.netiq.com/member.php?userid=469
View this thread: https://forums.netiq.com/showthread.php?t=55171


Visit my Website for links to Cool Solution articles.
0 Likes
Knowledge Partner
Knowledge Partner

Re: createResource SOAP call

On 1/21/2016 3:54 PM, ScorpionSting wrote:
>
> Shared the complete 4.5.2 wsdl with you via Google Drive


thanks, do not see the <ser:container> node in the createResource call,
so it looks like there is no fix in 4.5.2, if that is the way it should
be done.

So the question stands, is it possible to SOAP createResource and place
it in a subcontainer.

Second question arises: Are you allowed to move a Role or Resource
amongst containers? eDir will let you. What will UA do?

0 Likes
ScorpionSting Absent Member.
Absent Member.

Re: createResource SOAP call


I don't see anything in the DB that does a direct relation between
resource and DN....so I would *expect* that the DN can be dynamically
moved in the directory without impact....


--
-"Also now available in 'G+'
(http://plus.google.com/+BenWalter-Kiwi) and 'Website'
(https://www.isam.kiwi/) format".- 😉
------------------------------------------------------------------------
ScorpionSting's Profile: https://forums.netiq.com/member.php?userid=469
View this thread: https://forums.netiq.com/showthread.php?t=55171


Visit my Website for links to Cool Solution articles.
0 Likes
ScorpionSting Absent Member.
Absent Member.

Re: createResource SOAP call


Dropped the SP3 WSDL into Google Drive for you


--
-"Also now available in 'G+'
(http://plus.google.com/+BenWalter-Kiwi) and 'Website'
(https://www.isam.kiwi/) format".- 😉
------------------------------------------------------------------------
ScorpionSting's Profile: https://forums.netiq.com/member.php?userid=469
View this thread: https://forums.netiq.com/showthread.php?t=55171


Visit my Website for links to Cool Solution articles.
0 Likes
Knowledge Partner
Knowledge Partner

Re: createResource SOAP call

On 1/31/2016 3:24 PM, ScorpionSting wrote:
>
> Dropped the SP3 WSDL into Google Drive for you


Saw that, was flying today, will check later. Got it as i was boarding
a flight. 🙂 Thanks.

0 Likes
Anonymous_User Absent Member.
Absent Member.

Re: createResource SOAP call

On 2/1/16 12:17 AM, Geoffrey Carman wrote:
> On 1/31/2016 3:24 PM, ScorpionSting wrote:
>>
>> Dropped the SP3 WSDL into Google Drive for you

>
> Saw that, was flying today, will check later. Got it as i was boarding
> a flight. 🙂 Thanks.
>

Greetings Geoffrey,
I was told you opened a Service Request for this. Here answer to
your question:

=========
The design of Resource is different then that of Roles. Therefore, when
you are creating a Resource via SOAP the property “entityKey” contains
the full path/DN to where this Resource will be created (which includes
the sub-container). It is “true” that the createResource does not have
a “container” property. That is because it does not need it.

1. In Designer create a new Resource sub-container named “Support” and
then deploy it

2. In SoapUI in the createResource (clone of it) you would specify the
full DN of this new resource in the entityKey parameter (For Example:
<ser:entityKey>cn=soap-test-container,cn=Support,cn=ResourceDefs,cn=RoleConfig,cn=AppConfig,cn=User
Application Driver,cn=driverset1,o=system</ser:entityKey>

3. Execute in SoapUI.



Here is an createResource xml from my soapUI project that works:

<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ser="http://www.novell.com/resource/service">
<soapenv:Header/>
<soapenv:Body>
<ser:createResourceRequest>
<!--Optional:-->
<ser:resource>
<ser:active>true</ser:active>
<ser:allowOverride>false</ser:allowOverride>
<ser:allowedMulty>true</ser:allowedMulty>
<ser:description>soap test resource container</ser:description>
<ser:entitlementRef>
<!--Zero or more repetitions:-->
</ser:entitlementRef>

<ser:entityKey>cn=soap-test-container,cn=Support,cn=ResourceDefs,cn=RoleConfig,cn=AppConfig,cn=User
Application Driver,cn=driverset1,o=system</ser:entityKey>
<ser:grantApprovers/>
<ser:grantQuorum/>
<ser:grantRequestDef/>
<ser:name>soap test container</ser:name>
<ser:owners>
<!--Zero or more repetitions:-->
<ser:dnstring>
<ser:dn>cn=lab,ou=users,o=data</ser:dn>
</ser:dnstring>
</ser:owners>
<ser:parameters/>
<ser:provisioningRequestDef/>
<ser:resourceCategoryKeys>
<!--Zero or more repetitions:-->
<ser:categorykey>
<ser:categoryKey>default</ser:categoryKey>
</ser:categorykey>
</ser:resourceCategoryKeys>
<ser:revokeApprovers/>
<ser:revokeQuorum/>
<ser:revokeRequestDef/>
</ser:resource>
</ser:createResourceRequest>
</soapenv:Body>
</soapenv:Envelope>
===============

I hope this clarifies and answers your question.


--
Sincerely,
Steven Williams
Lead Software Engineer
Micro Focus
0 Likes
Knowledge Partner
Knowledge Partner

Re: createResource SOAP call

On 2/2/2016 5:32 AM, Steven Williams wrote:
> On 2/1/16 12:17 AM, Geoffrey Carman wrote:
>> On 1/31/2016 3:24 PM, ScorpionSting wrote:
>>>
>>> Dropped the SP3 WSDL into Google Drive for you

>>
>> Saw that, was flying today, will check later. Got it as i was boarding
>> a flight. 🙂 Thanks.
>>

> Greetings Geoffrey,
> I was told you opened a Service Request for this. Here answer to
> your question:
>
> =========
> The design of Resource is different then that of Roles. Therefore, when
> you are creating a Resource via SOAP the property “entityKey” contains
> the full path/DN to where this Resource will be created (which includes
> the sub-container). It is “true” that the createResource does not have
> a “container” property. That is because it does not need it.
>
> 1. In Designer create a new Resource sub-container named “Support” and
> then deploy it
>
> 2. In SoapUI in the createResource (clone of it) you would specify the
> full DN of this new resource in the entityKey parameter (For Example:
> <ser:entityKey>cn=soap-test-container,cn=Support,cn=ResourceDefs,cn=RoleConfig,cn=AppConfig,cn=User
> Application Driver,cn=driverset1,o=system</ser:entityKey>
>
> 3. Execute in SoapUI.
>
>
>
> Here is an createResource xml from my soapUI project that works:
>
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:ser="http://www.novell.com/resource/service">
> <soapenv:Header/>
> <soapenv:Body>
> <ser:createResourceRequest>
> <!--Optional:-->
> <ser:resource>
> <ser:active>true</ser:active>
> <ser:allowOverride>false</ser:allowOverride>
> <ser:allowedMulty>true</ser:allowedMulty>
> <ser:description>soap test resource
> container</ser:description>
> <ser:entitlementRef>
> <!--Zero or more repetitions:-->
> </ser:entitlementRef>
>
> <ser:entityKey>cn=soap-test-container,cn=Support,cn=ResourceDefs,cn=RoleConfig,cn=AppConfig,cn=User
> Application Driver,cn=driverset1,o=system</ser:entityKey>
> <ser:grantApprovers/>
> <ser:grantQuorum/>
> <ser:grantRequestDef/>
> <ser:name>soap test container</ser:name>
> <ser:owners>
> <!--Zero or more repetitions:-->
> <ser:dnstring>
> <ser:dn>cn=lab,ou=users,o=data</ser:dn>
> </ser:dnstring>
> </ser:owners>
> <ser:parameters/>
> <ser:provisioningRequestDef/>
> <ser:resourceCategoryKeys>
> <!--Zero or more repetitions:-->
> <ser:categorykey>
> <ser:categoryKey>default</ser:categoryKey>
> </ser:categorykey>
> </ser:resourceCategoryKeys>
> <ser:revokeApprovers/>
> <ser:revokeQuorum/>
> <ser:revokeRequestDef/>
> </ser:resource>
> </ser:createResourceRequest>
> </soapenv:Body>
> </soapenv:Envelope>
> ===============
>
> I hope this clarifies and answers your question.


Thanks! That is actually NOT the answer I got in the SR, I was told it
was a bug to be fixed later. This is a much better answr, thank you.

Is there a good doc that explains what each field in the SOAP call is
meant to be used for?

For example, what is <ser:parameters> used for? What is the difference
between the <ser:entitlementRef> node vs the seemingly similar options
in the <ser:parameters> node in the WSDL?


0 Likes
Anonymous_User Absent Member.
Absent Member.

Re: createResource SOAP call

On 2/2/16 6:11 AM, Geoffrey Carman wrote:
> On 2/2/2016 5:32 AM, Steven Williams wrote:
>> On 2/1/16 12:17 AM, Geoffrey Carman wrote:
>>> On 1/31/2016 3:24 PM, ScorpionSting wrote:
>>>>
>>>> Dropped the SP3 WSDL into Google Drive for you
>>>
>>> Saw that, was flying today, will check later. Got it as i was boarding
>>> a flight. 🙂 Thanks.
>>>

>> Greetings Geoffrey,
>> I was told you opened a Service Request for this. Here answer to
>> your question:
>>
>> =========
>> The design of Resource is different then that of Roles. Therefore, when
>> you are creating a Resource via SOAP the property “entityKey” contains
>> the full path/DN to where this Resource will be created (which includes
>> the sub-container). It is “true” that the createResource does not have
>> a “container” property. That is because it does not need it.
>>
>> 1. In Designer create a new Resource sub-container named “Support” and
>> then deploy it
>>
>> 2. In SoapUI in the createResource (clone of it) you would specify the
>> full DN of this new resource in the entityKey parameter (For Example:
>> <ser:entityKey>cn=soap-test-container,cn=Support,cn=ResourceDefs,cn=RoleConfig,cn=AppConfig,cn=User
>>
>> Application Driver,cn=driverset1,o=system</ser:entityKey>
>>
>> 3. Execute in SoapUI.
>>
>>
>>
>> Here is an createResource xml from my soapUI project that works:
>>
>> <soapenv:Envelope
>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
>> xmlns:ser="http://www.novell.com/resource/service">
>> <soapenv:Header/>
>> <soapenv:Body>
>> <ser:createResourceRequest>
>> <!--Optional:-->
>> <ser:resource>
>> <ser:active>true</ser:active>
>> <ser:allowOverride>false</ser:allowOverride>
>> <ser:allowedMulty>true</ser:allowedMulty>
>> <ser:description>soap test resource
>> container</ser:description>
>> <ser:entitlementRef>
>> <!--Zero or more repetitions:-->
>> </ser:entitlementRef>
>>
>> <ser:entityKey>cn=soap-test-container,cn=Support,cn=ResourceDefs,cn=RoleConfig,cn=AppConfig,cn=User
>>
>> Application Driver,cn=driverset1,o=system</ser:entityKey>
>> <ser:grantApprovers/>
>> <ser:grantQuorum/>
>> <ser:grantRequestDef/>
>> <ser:name>soap test container</ser:name>
>> <ser:owners>
>> <!--Zero or more repetitions:-->
>> <ser:dnstring>
>> <ser:dn>cn=lab,ou=users,o=data</ser:dn>
>> </ser:dnstring>
>> </ser:owners>
>> <ser:parameters/>
>> <ser:provisioningRequestDef/>
>> <ser:resourceCategoryKeys>
>> <!--Zero or more repetitions:-->
>> <ser:categorykey>
>> <ser:categoryKey>default</ser:categoryKey>
>> </ser:categorykey>
>> </ser:resourceCategoryKeys>
>> <ser:revokeApprovers/>
>> <ser:revokeQuorum/>
>> <ser:revokeRequestDef/>
>> </ser:resource>
>> </ser:createResourceRequest>
>> </soapenv:Body>
>> </soapenv:Envelope>
>> ===============
>>
>> I hope this clarifies and answers your question.

>
> Thanks! That is actually NOT the answer I got in the SR, I was told it
> was a bug to be fixed later. This is a much better answr, thank you.
>
> Is there a good doc that explains what each field in the SOAP call is
> meant to be used for?
>
> For example, what is <ser:parameters> used for? What is the difference
> between the <ser:entitlementRef> node vs the seemingly similar options
> in the <ser:parameters> node in the WSDL?
>
>

Greetings Geoffrey,
In the past, I have provided feedback for what the different
parameters are for. Not sure if my doc is still around any more or not.
A Resource can have request parameters (These are on the Request
Form tab when looking at a Resource in the User Application (IDMProv).
They are different then the entitlement and the value it can have.


--
Sincerely,
Steven Williams
Lead Software Engineer
Micro Focus
0 Likes
Knowledge Partner
Knowledge Partner

Re: createResource SOAP call

> In the past, I have provided feedback for what the different
> parameters are for. Not sure if my doc is still around any more or not.


Would love to see that document. I would be glad to contribute
information/content to it, from an enduser perspective if you wanted to
"wiki-ize" it.

> A Resource can have request parameters (These are on the Request
> Form tab when looking at a Resource in the User Application (IDMProv).
> They are different then the entitlement and the value it can have.


As usual, examples would be really nice. (See request for doc above. 🙂 )

How would you move a Resource after it was created? Is it sufficient to
just move it via LDAP/eDir? In the directory, all references are by DN.
If the DB references objects, one imagines you use the eDir GUID on
the object, which would not change on a move.

0 Likes
Knowledge Partner
Knowledge Partner

Re: createResource SOAP call

On 2/2/2016 9:17 AM, Geoffrey Carman wrote:
>> In the past, I have provided feedback for what the different
>> parameters are for. Not sure if my doc is still around any more or not.

>
> Would love to see that document. I would be glad to contribute
> information/content to it, from an enduser perspective if you wanted to
> "wiki-ize" it.
>
>> A Resource can have request parameters (These are on the Request
>> Form tab when looking at a Resource in the User Application (IDMProv).
>> They are different then the entitlement and the value it can have.

>
> As usual, examples would be really nice. (See request for doc above. 🙂 )
>
> How would you move a Resource after it was created? Is it sufficient to
> just move it via LDAP/eDir? In the directory, all references are by DN.
> If the DB references objects, one imagines you use the eDir GUID on
> the object, which would not change on a move.


If I called modifyResource and specified a different entityKey, would
that cause a move, or fail because the DN is wrong?

0 Likes
Anonymous_User Absent Member.
Absent Member.

Re: createResource SOAP call

On 2/2/16 8:08 PM, Geoffrey Carman wrote:
> On 2/2/2016 9:17 AM, Geoffrey Carman wrote:
>>> In the past, I have provided feedback for what the different
>>> parameters are for. Not sure if my doc is still around any more or not.

>>
>> Would love to see that document. I would be glad to contribute
>> information/content to it, from an enduser perspective if you wanted to
>> "wiki-ize" it.
>>
>>> A Resource can have request parameters (These are on the Request
>>> Form tab when looking at a Resource in the User Application (IDMProv).
>>> They are different then the entitlement and the value it can have.

>>
>> As usual, examples would be really nice. (See request for doc above.
>> 🙂 )
>>
>> How would you move a Resource after it was created? Is it sufficient to
>> just move it via LDAP/eDir? In the directory, all references are by DN.
>> If the DB references objects, one imagines you use the eDir GUID on
>> the object, which would not change on a move.

>
> If I called modifyResource and specified a different entityKey, would
> that cause a move, or fail because the DN is wrong?
>

Greetings Geoffrey,
We do not support moving an object (Role or Resource). You will have
to delete it and then create it in the new container.
The Modify only updates certain attributes of an existing Resource.



--
Sincerely,
Steven Williams
Lead Software Engineer
Micro Focus
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.