ヘッダーをスキップ

Oracle Identity Manager Toolsリファレンス
リリース9.1.0

E05903-02
目次
目次
索引
索引

戻る 次へ

B SPMLメッセージの例

この付録では、SPML WebサービスでサポートされているSOAP SPMLメッセージの例を示します。SPMLメッセージはSOAPリクエストに組み込まれます。

追加リクエスト

次の例には、ユーザーID John Doeを使用してユーザーを作成し、Groups 5とGroups 6の
2つのグループにサブスクライブする追加リクエスト処理が含まれています。

<addRequest returnData="everything" xmlns="urn:oasis:names:tc:SPML:2:0" 
xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
    <data>
           <dsml:attr name="objectclass">
                 <dsml:value>Users</dsml:value>
           </dsml:attr>
          <dsml:attr name="Users.User ID">
                 <dsml:value>John Doe</dsml:value>
           </dsml:attr>
            <dsml:attr name="Users.First Name">
                  <dsml:value>John</dsml:value>
            </dsml:attr>
            <dsml:attr name="Users.Last Name">
                   <dsml:value>Doe</dsml:value>
             </dsml:attr>
             <dsml:attr name="Organizations.Organization Name">
                    <dsml:value>Xellerate Users</dsml:value>
             </dsml:attr>
             <dsml:attr name="Users.Xellerate Type">
                     <dsml:value>End-User</dsml:value>
             </dsml:attr>
             <dsml:attr name="Users.Role">
                      <dsml:value>Full-Time</dsml:value>
              </dsml:attr>
              <dsml:attr name="Users.Password">
                      <dsml:value>welcome</dsml:value>
                </dsml:attr>
        </data>
   <capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
        <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                  <toPsoID ID="Groups:5" />
         </reference>
         <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                   <toPsoID ID="Groups:6" />
         </reference>
       </capabilityData>
</addRequest>

次の例には、前述の追加リクエスト処理に対する成功レスポンスが含まれています。

<addResponse status="success">
<pso>
<psoID ID="Users:7"/>
<data>
<attr name="Users.User ID">
<value>John Doe</value>
</attr>
<attr name="Users.Key">
<value>7</value>
</attr>
<attr name="Users.Last Name">
<value>Doe</value>
</attr>
<attr name="Users.First Name">
<value>John</value>
</attr>
<attr name="Users.Xellerate Type">
<value>End-User</value>
</attr>
<attr name="Users.Creation Date">
<value>2007-08-28 12:42:32.147</value>
</attr>
<attr name="Users.Updated By">
<value>1</value>
</attr>
<attr name="Users.Update Date">
<value>2007-08-28 12:42:36.38</value>
</attr>
<attr name="Users.Status">
<value>Active</value>
</attr>
<attr name="Users.Disable User">
<value>0</value>
</attr>
<attr name="Users.Lock User">
<value>0</value>
</attr>
<attr name="Organizations.Key">
<value>1</value>
</attr>
<attr name="Users.Role">
<value>Full-Time</value>
</attr>
<attr name="Organizations.Organization Name">
<value>Xellerate Users</value>
</attr>
<attr name="Users.Provisioned Date">
<value>2007-08-28 12:42:32.147</value>
</attr>
<attr name="Users.Change Password At Next Logon">
<value>1</value>
</attr>
<attr name="objectclass">
<value>Users</value>
</attr>
</data>
<capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference"
mustUnderstand="true">
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:5"/>
</reference>
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:6"/>
</reference>
</capabilityData>
</pso>
</addResponse>

次の例には、指定したユーザーIDのユーザーがすでに存在している場合の追加リクエスト処理に対する失敗レスポンスが含まれています。

<addResponse status="failure" error="alreadyExists">
<errorMessage>
exception=tcDuplicateUserException;errorMessage=Duplicate_User
</errorMessage>
</addResponse>

次の例には、グループを作成し、Groups:4とGroups:5の2つのグループにサブスクライブする追加リクエスト処理が含まれています。このリクエストでは、グループをGroups:7とGroups:8の2つの管理者グループへ割り当てることも行われます。

<addRequest returnData="everything" xmlns="urn:oasis:names:tc:SPML:2:0" 
xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
<data>
<dsml:attr name="objectclass">
<dsml:value>Groups</dsml:value>
</dsml:attr>
<dsml:attr name="Groups.Group Name">
<dsml:value>Add Group40</dsml:value>
</dsml:attr>
</data>
<capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
<reference typeOfReference="memberOf" xmlns="urn:oasis:names:tc:SPML:2:0:reference">
<toPsoID ID="Groups:4" />
                                                            </reference>
                                <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                            <toPsoID ID="Groups:5" />
                                </reference>
<reference typeOfReference="administrator" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
            <toPsoID ID="Groups:7" />
</reference>
<reference typeOfReference="administrator" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
            <toPsoID ID="Groups:8" />
</reference>
              </capabilityData>
</addRequest>

次の例には、グループを作成する、前述の追加リクエスト処理に対する成功レスポンスが含まれています。

<addResponse status="success">
<pso>
<psoID ID="Groups:11"/>
<data>
<attr name="Groups.Key">
<value>11</value>
</attr>
<attr name="Groups.Group Name">
<value>Add Group40</value>
</attr>
<attr name="Groups.Updated By">
<value>1</value>
</attr>
<attr name="Groups.Update Date">
<value>2007-08-28 15:22:04.953</value>
</attr>
<attr name="Groups.Creation Date">
<value>2007-08-28 15:22:04.953</value>
</attr>
<attr name="Groups.Created By">
<value>1</value>
</attr>
<attr name="objectclass">
<value>Groups</value>
</attr>
</data>
<capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference"
mustUnderstand="true">
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:4"/>
</reference>
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:5"/>
</reference>
<reference typeOfReference="administrator">
<toPsoID ID="Groups:1"/>
</reference>
<reference typeOfReference="administrator">
<toPsoID ID="Groups:7"/>
</reference>
<reference typeOfReference="administrator">
<toPsoID ID="Groups:8"/>
</reference>
</capabilityData>
</pso>
</addResponse>

次の例には、グループがすでに存在した場合の前述の処理に対する失敗レスポンスが含まれています。

<addResponse status="failure" error="alreadyExists">
<errorMessage>exception=Duplicate_Group</errorMessage>
</addResponse>
変更リクエスト

次の例には、ユーザーの2つのグループへのサブスクライブを解除し、Groups:4とGroups:5の2つのグループに新たにサブスクライブする変更リクエスト処理が含まれています。

<modifyRequest returnData="everything" xmlns="urn:oasis:names:tc:SPML:2:0" 
xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
<psoID ID="Users:31"></psoID>
    <modification modificationMode="add">
             <capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
                    <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                <toPsoID ID="Groups:4" />
                    </reference>
                     <reference typeOfReference="memberOf"  
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                <toPsoID ID="Groups:5"/>
                     </reference>
              </capabilityData>
</modification>
<modification modificationMode="delete">
            <capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
                      <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                               <toPsoID ID="Groups:6"/>
                      </reference>
                     <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                             <toPsoID ID="Groups:7"/>
                      </reference>
           </capabilityData>
   </modification>
</modifyRequest>

次の例には、前述の変更リクエスト処理に対する成功レスポンスが含まれています。

<modifyResponse status="success">
<pso>
<psoID ID="Users:31"/>
<data>
<attr name="Users.User ID">
<value>John Doe</value>
</attr>
<attr name="Users.Key">
<value>7</value>
</attr>
<attr name="Users.Last Name">
<value>Doe</value>
</attr>
<attr name="Users.First Name">
<value>John</value>
</attr>
<attr name="Users.Xellerate Type">
<value>End-User</value>
</attr>
<attr name="Users.Creation Date">
<value>2007-08-28 12:42:32.147</value>
</attr>
<attr name="Users.Updated By">
<value>1</value>
</attr>
<attr name="Users.Update Date">
<value>2007-08-28 12:42:36.38</value>
</attr>
<attr name="Users.Status">
<value>Active</value>
</attr>
<attr name="Users.Disable User">
<value>0</value>
</attr>
<attr name="Users.Lock User">
<value>0</value>
</attr>
<attr name="Organizations.Key">
<value>1</value>
</attr>
<attr name="Users.Role">
<value>Full-Time</value>
</attr>
<attr name="Organizations.Organization Name">
<value>Xellerate Users</value>
</attr>
<attr name="Users.Provisioned Date">
<value>2007-08-28 12:42:32.147</value>
</attr>
<attr name="Users.Change Password At Next Logon">
<value>1</value>
</attr>
</data>
<capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference"
mustUnderstand="true">
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:3"/>
</reference>
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:4"/>
</reference>
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:5"/>
</reference>
</capabilityData>
</pso>
</modifyResponse>

次の例には、ユーザーが使用可能でない場合の前述の処理に対する失敗レスポンスが含まれています。

<modifyResponse status="failure" error="noSuchIdentifier">
<errorMessage>
exception=OIMSpmlException;errorMessage=NO_USER_ID_DEFINED
</errorMessage>
</modifyResponse>

次の例には、2つのグループ・メンバーシップ(Groups:7とGroups:8)およびグループ管理者(Groups:9)を追加する、グループ(Groups:36)とそのグループ参照の変更リクエスト処理が含まれています。ここでは、既存のグループ・メンバーシップ(Groups:10)および管理者参照(Groups:11)の削除も行われます。

<modifyRequest returnData="everything" xmlns="urn:oasis:names:tc:SPML:2:0" 
xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
       <psoID ID="Groups:36"></psoID>
        <modification>
                   <dsml:modification name="Groups.Group Name" operation="add">
                           <dsml:value>Changed</dsml:value>
                   </dsml:modification>
          </modification>
          <modification modificationMode="add">
                   <capabilityData 
capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" mustUnderstand="true">
                           <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                        <toPsoID ID="Groups:7"/>
                            </reference>
                            <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                        <toPsoID ID="Groups:8"/>
                           </reference>
                          <reference typeOfReference="administrator" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                       <toPsoID ID="Groups:9"/>
                           </reference>
                  </capabilityData>
          </modification>
          <modification modificationMode="delete">
                 <capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
                       <reference typeOfReference="administrator" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                  <toPsoID ID="Groups:10"/>
                       </reference>
                        <reference typeOfReference="memberOf" 
xmlns="urn:oasis:names:tc:SPML:2:0:reference">
                                <toPsoID ID="Groups:11"/>
                        </reference>
                 </capabilityData>
           </modification>
</modifyRequest>


次の例には、前述の変更リクエスト処理に対する成功レスポンスが含まれています。

<modifyResponse status="success">
<pso>
<psoID ID="Groups:36"/>
<data>
<attr name="Groups.Key">
<value>36</value>
</attr>
<attr name="Groups.Group Name">
<value>Changed</value>
</attr>
<attr name="Groups.Updated By">
<value>1</value>
</attr>
<attr name="Groups.Update Date">
<value>2007-08-29 21:00:51.657</value>
</attr>
<attr name="Groups.Creation Date">
<value>2007-08-27 15:22:43.97</value>
</attr>
<attr name="Groups.Created By">
<value>1</value>
</attr>
</data>
<capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:7"/>
</reference>
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:8"/>
</reference>
<reference typeOfReference="administrator">
<toPsoID ID="Groups:1"/>
</reference>
<reference typeOfReference="administrator">
<toPsoID ID="Groups:9"/>
</reference>
</capabilityData>
</pso>
</modifyResponse>

次の例には、グループIDが存在しない場合の前述の処理に対する失敗レスポンスが含まれています。

<modifyResponse status="failure" error="noSuchIdentifier">
<errorMessage>
exception=OIMSpmlException;errorMessage=GROUP_NOT_FOUND
</errorMessage>
</modifyResponse>

日付書式付き追加リクエスト

次の追加リクエストの例では、開始日および終了日属性を割り当てることでユーザーが追加されます。日付書式は、yyyy-mm-dd HH:MM:SS.sss形式です。

<addRequest returnData="everything" xmlns="urn:oasis:names:tc:SPML:2:0" 
xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
    <data>
 <dsml:attr name="objectclass">
         <dsml:value>Users</dsml:value>
</dsml:attr>
<dsml:attr name="Users.User ID">
    <dsml:value>John Doe</dsml:value>
</dsml:attr>
<dsml:attr name="Users.First Name">
    <dsml:value>John</dsml:value>
</dsml:attr>
<dsml:attr name="Users.Last Name">
    <dsml:value>Doe</dsml:value>
</dsml:attr>
<dsml:attr name="Organizations.Organization Name">
    <dsml:value>Xellerate Users</dsml:value>
</dsml:attr>
<dsml:attr name="Users.Xellerate Type">
    <dsml:value>End-User</dsml:value>
</dsml:attr>
<dsml:attr name="Users.Manager Login">
    <dsml:value>Jane Doe</dsml:value>
</dsml:attr>
<dsml:attr name="Users.Role">
    <dsml:value>Full-Time</dsml:value>
</dsml:attr>
<dsml:attr name="Users.Password">
    <dsml:value>welcome</dsml:value>
</dsml:attr>
<dsml:attr name="Users.Start Date">
    <dsml:value>2007-06-18 00:00:00.000</dsml:value>
</dsml:attr>
<dsml:attr name="Users.End Date">
    <dsml:value>2017-06-18 00:00:00.000</dsml:value>
</dsml:attr>
  </data>
</addRequest>

次の例には、前述の追加リクエスト処理に対する成功レスポンスが含まれています。

<addResponse status="success">
<pso>
<psoID ID="Users:8"/>
<data>
<attr name="Users.User ID">
<value>John Doe</value>
</attr>
<attr name="Users.Key">
<value>8</value>
</attr>
<attr name="Users.Last Name">
<value>Doe</value>
</attr>
<attr name="Users.First Name">
<value>John</value>
</attr>
<attr name="Users.Manager Key">
<value>4</value>
</attr>
<attr name="Users.Manager Login">
<value>John</value>
</attr>
<attr name="Users.Manager First Name">
<value>John</value>
</attr>
<attr name="Users.Manager Last Name">
<value>Doe</value>
</attr>
<attr name="Users.Xellerate Type">
<value>End-User</value>
</attr>
<attr name="Users.Creation Date">
<value>2007-08-29 21:27:03.39</value>
</attr>
<attr name="Users.Updated By">
<value>1</value>
</attr>
<attr name="Users.Update Date">
<value>2007-08-29 21:27:06.937</value>
</attr>
<attr name="Users.Status">
<value>Active</value>
</attr>
<attr name="Users.Disable User">
<value>0</value>
</attr>
<attr name="Users.Lock User">
<value>0</value>
</attr>
<attr name="Organizations.Key">
<value>1</value>
</attr>
<attr name="Users.Role">
<value>Full-Time</value>
</attr>
<attr name="Organizations.Organization Name">
<value>Xellerate Users</value>
</attr>
<attr name="Users.Start Date">
<value>2007-06-18 00:00:00.0</value>
</attr>
<attr name="Users.End Date">
<value>2017-06-18 00:00:00.0</value>
</attr>
<attr name="Users.Provisioning Date">
<value>2007-06-18 00:00:00.0</value>
</attr>
<attr name="Users.Provisioned Date">
<value>2007-08-29 21:27:03.39</value>
</attr>
<attr name="Users.Change Password At Next Logon">
<value>1</value>
</attr>
<attr name="objectclass">
<value>Users</value>
</attr>
</data>
<capabilityData capabilityURI="urn:oasis:names:tc:SPML:2:0:reference" 
mustUnderstand="true">
<reference typeOfReference="memberOf">
<toPsoID ID="Groups:3"/>
</reference>
</capabilityData>
</pso>
</addResponse>

次の例には、ユーザーがすでに存在した場合の前述の処理に対する失敗レスポンスが含まれています。

<addResponse status="failure" error="alreadyExists">
<errorMessage>
exception=tcDuplicateUserException;errorMessage=Duplicate_User
</errorMessage>
</addResponse>

戻る 次へ
Oracle
Copyright © 2007, 2008 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引