OAuthリソース・サーバーの作成およびアクティブ化

この項では、アイデンティティ・ドメインのREST APIを使用してOAuthリソース・サーバーを作成およびアクティブ化するリクエストの例を示します。

OAuthリソース・サーバー・アプリケーションの作成

リソース・サーバー・アプリケーションは、Webアプリケーションがユーザーのために使用するサービスを提供するサードパーティ・アプリケーションです。次の例では、OAuthリソース・アプリケーションを作成するためのリクエストを作成する方法を示します。

ノート

リクエストでオプションのname属性を使用している場合、値では英数字およびアンダースコア( _ )文字のみを使用するようにしてください。
echo "Create OAuth Resource App"
cat>/tmp/OAuthResourceApp.json << __EOF__
{
"schemas":["urn:ietf:params:scim:schemas:oracle:idcs:App"],
"displayName":"Example_Service1",
"description":"example service1",
"audience":"http://example.com/",
"isOAuthResource": true,
"basedOnTemplate": {
     "value": "CustomWebAppTemplateId"
},
"scopes": [
                {
                     "description": "photos",
                     "requiresConsent": true,
                     "value": "photos"
                },
                {
                     "description": "presentations",
                      "requiresConsent": true,
                      "value": "presentations"
                },
                {
                     "description": "documents",
                     "requiresConsent": true,
                     "value": "documents"
                },
                {
                     "description": "user",
                     "requiresConsent": false,
                     "value": "UserProfile.me"
                },
                {
                     "description": "sample",
                     "requiresConsent": false,
                     "value": "test1.scope"
                }
           ]
}
__EOF__

curl -X POST 
-H "Content-type: application/json" 
-H "Authorization: Bearer <access token value>" 
--data @/tmp/OAuthResourceApp.json http://<domainURL>/admin/v1/Apps

OAuthリソース・サーバー・アプリケーションに必要なアプリケーション属性

必要なアプリケーション属性 説明
displayName アプリケーションの表示名を識別します。表示名はユーザーにとってわかりやすいことを目的とし、管理者が値をいつでも変更できます。
basedOnTemplate アプリケーションの基礎になっているアプリケーション・テンプレートを示します。
isOAuthResource trueに設定した場合は、このアプリケーションがOAuthリソースとして機能することを示します。
audience このアプリケーションで定義されているすべてのスコープに対するベースURIを識別します。audienceの値は、fqs (完全修飾スコープ)を形成するために各スコープのvalueと結合されます。

OAuthリソース・アプリケーションのアクティブ化

次の例を使用して、OAuthリソース・サーバー・アプリケーションをアクティブ化するためのリクエストを作成します。

echo "Activate OAuth Resource App"
cat>/tmp/OAuthResourceApp.json << __EOF__
{
        "active" : true,
        "schemas": [
                "urn:ietf:params:scim:schemas:oracle:idcs:AppStatusChanger"
        ]
}
__EOF__

curl -X PUT 
-H "Content-type: application/json" 
-H "Authorization: Bearer <access token value>" 
--data @/tmp/OAuthResourceApp.json http://<domainURL>/admin/v1/AppStatusChanger/<appID>