アクセス・リストへのユーザー、アプリケーションまたはグループの追加または削除
/sites/management/api/v1/policies/{id}/access
アクセス・リストに対して追加および削除するユーザー、アプリケーションまたはグループのセットを指定します。 ユーザー、クライアント・アプリケーションまたはグループ名がユーザー、クライアント・アプリケーションまたはグループに一致していない場合、無効なユーザー、クライアント・アプリケーションまたはグループ・エラー・レスポンスが返されます。 同じユーザー、クライアント・アプリケーションまたはグループの追加の試行は、アクセス・リストのメンバーではないユーザー、クライアント・アプリケーションまたはグループの削除の試行と同様に無視されます。 この操作で追加または削除できるのは、リクエストごとに50ユーザーまたはグループ(あるいはその両方)のみです。
リリース19.3.1.での導入。
認可
ユーザー、クライアント・アプリケーションおよびグループは、「サイト管理者」によってアクセス・リストに追加または削除できます。
アクセス・リストの有効化
アクセス・リストは、関連するポリシーのaccessType
がrestricted
に設定されている場合にのみ使用されます。 アクセス・タイプがeveryone
に設定されている場合、アクセス・リストのメンバーは無視されます。 ただし、ポリシー・アクセス・タイプがeveryone
に設定されている場合にアクセス・リスト・メンバーを変更することは有効です。
詳細は、「ポリシーのフィールドの更新」を参照してください。
成功したレスポンスの例
この操作は、次の成功(2xx)のレスポンスで応答します。 レスポンスHTTPステータス・コードとサンプル本体の完全なリストは、この操作の「レスポンス」に関する項を参照してください。
200OK - Add
ユーザー、クライアント・アプリケーションおよびグループを同じリクエストに追加できます。 グループは、group:groupname
構文を使用して指定されます。 ユーザーの指定にはuser:username
構文を使用します。 クライアント・アプリケーションは、user:applicationname
構文を使用して識別されます。
リクエスト
PATCH https://api.example.com/sites/management/api/v1/policies/{id}/access
リクエスト本文
{ "add": [ "user:jsmith", "group:marketing" ] }
200 OK - 削除
ユーザー、クライアント・アプリケーションおよびグループは、同じリクエストで削除できます。 グループは、group:groupname
構文を使用して指定されます。 ユーザーの指定にはuser:username
構文を使用します。 クライアント・アプリケーションは、user:applicationname
構文を使用して識別されます。
リクエスト
PATCH https://api.example.com/sites/management/api/v1/policies/{id}/access
リクエスト本文
{ "remove": [ "user:jsmith", "group:marketing" ] }
200 OK - 追加と削除
ユーザー、クライアント・アプリケーションおよびグループは、同じリクエストで追加および削除できます。 グループは、group:groupname
構文を使用して指定されます。 ユーザーの指定にはuser:username
構文を使用します。 クライアント・アプリケーションは、user:applicationname
構文を使用して識別されます。
リクエスト
PATCH https://api.example.com/sites/management/api/v1/policies/{id}/access
リクエスト本文
{ "add": [ "user:jsmith", "user:jdoe" ], "remove": [ "group:marketing" ] }
クライアント・エラー・レスポンスの例
この操作は、レスポンス本文に例外の詳細が含まれている次のクライアント・エラー(4xx)レスポンスで応答します。 レスポンスHTTPステータス・コードとサンプル本体の完全なリストは、この操作の「レスポンス」に関する項を参照してください。
400不正なリクエスト - 無効なユーザーまたはアプリケーション
識別されたユーザーまたはクライアント・アプリケーションが見つかりません。
エラー・コード
OCE-IDS-001004
解決 - ユーザーの存在確認
ユーザー名が有効であることを確認してください。
解決 - クライアント・アプリケーションが存在するかどうかの確認
クライアント・アプリケーション名が有効であることを確認してください。
例外詳細フィールド
このエラー・タイプでは、レスポンスに次のフィールド/値が含まれます:
フィールド名 | 説明 |
user | 存在しないユーザーまたはアプリケーション。 |
この例外の詳細タイプの詳細は、swaggerドキュメントの定義セクションのInvalidIdentityExceptionDetailスキーマを参照してください。
レスポンス本文の例
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid User or Application", "status": "400", "detail": "User or client application does not exist.", "o:errorCode": "OCE-IDS-001004", "user": { "id": "1234" } }
リリース19.3.1.での導入。
400Bad Request - Invalid Group
グループ名などの識別子で識別されたグループが見つかりません。
エラー・コード
OCE-IDS-001007
解決 - グループが存在するか確認
グループ識別子またはグループ名が有効であることを確認してください。
例外詳細フィールド
このエラー・タイプでは、レスポンスに次のフィールド/値が含まれます:
フィールド名 | 説明 |
group | 存在しないグループ。 |
この例外の詳細タイプの詳細は、swaggerドキュメントの定義セクションのInvalidGroupExceptionDetailスキーマを参照してください。
レスポンス本文の例
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid Group", "status": "400", "detail": "Group does not exist.", "o:errorCode": "OCE-IDS-001007", "group": { "id": "1234" } }
リリース19.3.1.での導入。
400Bad Request - Too Many Members
メンバー・リスト内のユーザー、アプリケーションまたはグループを追加、削除または置換する場合、サーバーは1回の呼出しで処理できる要素の最大数を強制できます。 これは、単一の同期リクエストに無制限処理時間がないようにするためです。
エラー・コード
OCE-IDS-001028
解決 - メンバー数の削減
指定された最大数以下のユーザーおよびグループの数を減らしてください。
解決 - メンバーの個別追加
コレクション・リソースでPOSTを使用して、メンバーを個別に追加します。
解決 - メンバーの個別削除
メンバーを個別に削除するには、メンバー・リソースを使用します。
例外詳細フィールド
このエラー・タイプでは、レスポンスに次のフィールド/値が含まれます:
フィールド名 | 説明 |
maximum | 要素の最大数。 |
actual | 指定された要素数。 |
この例外の詳細タイプの詳細は、swaggerドキュメントの定義セクションのTooManyMembersExceptionDetailスキーマを参照してください。
レスポンス本文の例
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Too Many Members", "status": "400", "detail": "A single request cannot process more than '{maximum}' users and groups. The number of users and groups provided was '{actual}'.", "o:errorCode": "OCE-IDS-001028", "maximum": 1234, "actual": 1234 }
リリース19.3.1.での導入。
400Bad Request - Unsupported Policy Field
ポリシーのフィールドを指定しないことを示します。 たとえば、標準テンプレートのポリシーにリポジトリを指定することはできません。
エラー・コード
OCE-SITEMGMT-009036
解決 - ローカリゼーション・ポリシーの削除許可
関連付けられているテンプレートが標準テンプレートの場合は、ポリシーのlocalizationPolicyAllowed
フィールドを削除します。
解決 - 使用可能なサイト・プレフィクスの削除
関連付けられているテンプレートが標準テンプレートの場合は、ポリシーのsitePrefixAllowed
フィールドを削除します。
解決 - リポジトリの削除
関連付けられているテンプレートが標準テンプレートの場合は、ポリシーのrepository
フィールドを削除します。
例外詳細フィールド
このエラー・タイプでは、レスポンスに次のフィールド/値が含まれます:
フィールド名 | 説明 |
field | サイトのタイプと互換性がないフィールド名。 |
この例外の詳細タイプの詳細は、swaggerドキュメントの定義セクションのUnsupportedPolicyFieldExceptionDetailスキーマを参照してください。
レスポンス本文の例
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Unsupported Policy Field", "status": "400", "detail": "Field '{field}' should not be provided for this policy.", "o:errorCode": "OCE-SITEMGMT-009036", "field": "repository" }
404Not Found - Policy Not Found
ポリシーが存在しないか削除されているか、認証されたユーザー・アプリケーションまたはクライアント・アプリケーションがポリシーへのアクセス権を持っていません。
エラー・コード
OCE-SITEMGMT-009022
解決 - 識別子のチェック
ポリシー識別子が有効であることを確認してください。
解決 - ロールのチェック
認証されたユーザーがサイト管理者であることを確認します。
解決 - アクセスの確認
ユーザーが「サイト管理者」でない場合は、ポリシー'accessType'に認証済ユーザーが含まれているかどうかを確認します。
例外詳細フィールド
このエラー・タイプでは、レスポンスに次のフィールド/値が含まれます:
フィールド名 | 説明 |
policy | 存在しないか、認証されたユーザーから表示可能でないポリシー。 |
この例外の詳細タイプの詳細は、swaggerドキュメントの定義セクションのPolicyNotFoundExceptionDetailスキーマを参照してください。
レスポンス本文の例
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Policy Not Found", "status": "404", "detail": "Policy does not exist or has been deleted, or the authenticated user or client application does not have access to the policy.", "o:errorCode": "OCE-SITEMGMT-009022", "policy": { "id": "721af08b-32db-4eee-b6af-0c38d3ba4681" } }
409Conflict - Policy Read Only
ポリシーは読取り専用であり、変更できません。 テンプレートまたはサイトに関連付けられているポリシーのみ編集できます。 リクエストに関連付けられているポリシーは読取り専用です。
エラー・コード
OCE-SITEMGMT-009032
解決 - テンプレート・ポリシーの編集
テンプレートに関連付けられたポリシーを変更することを目的としている場合は、テンプレート・ポリシー・リソースからポリシー識別子を使用します。
解決 - コピー・サイト・ポリシーの編集
サイトのコピー操作に関連付けられているポリシーを変更することを目的としている場合は、コピー操作ポリシー・リソースからポリシー識別子を使用します。
解決 - サイトの拡張有効期限ポリシーの編集
サイトのコピー操作に関連付けられているポリシーを変更することを目的としている場合は、拡張サイトの有効期限操作のポリシー・リソースからポリシー識別子を使用します。
例外詳細フィールド
このエラー・タイプでは、レスポンスに次のフィールド/値が含まれます:
フィールド名 | 説明 |
policy | 読取り専用ポリシー。 |
この例外の詳細タイプの詳細は、swaggerドキュメントの定義セクションのPolicyReadOnlyExceptionDetailスキーマを参照してください。
レスポンス本文の例
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Policy Read Only", "status": "409", "detail": "The policy is read-only and cannot be modified.", "o:errorCode": "OCE-SITEMGMT-009032", "policy": { "id": "721af08b-32db-4eee-b6af-0c38d3ba4681" } }
リクエスト
- application/merge-patch+json
- id: string
ポリシーのグローバル一意識別子。
アクセス・リストに対して追加または削除するユーザーおよびグループ。
object
- add(optional): array add
追加するメンバー。
リリース19.3.1.での導入。 - remove(optional): array remove
削除するメンバー。
リリース19.3.1.での導入。
{
"add":[
"user:jsmith",
"user:jdoe"
],
"remove":[
"group:marketing"
]
}
レスポンス
200レスポンス
400レスポンス
- object ExceptionDetail
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
- object InvalidIdentityExceptionDetail-allOf[1]
object
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
- detail(optional): string
この問題の発生に固有の説明。 人間が判読できる、場合によっては複数行の詳細で問題を説明しています。
- instance(optional): string(uri)
エラーに関する詳細を提供するリンクへのURI。
- o:errorCode(optional): string
アプリケーション・エラー・コード。HTTPエラー・コードとは異なります。 このコードは、
title
やdetail
などのフィールドを比較するのではなく、特定のエラーをチェックするために使用する必要があります。 - o:errorDetails(optional): array o:errorDetails
階層構造に複数のエラーがある場合もあります。
- o:errorPath(optional): string
エラーが発生した場所を示すXPathまたはJSONパス。
- status(optional): integer(int32)
エラーに対応するHTTPステータス・コード。
- title(optional): string
問題の短く、判読可能なサマリー。 タイトルは、特定のエラーをチェックする方法としては使用しないでください。そのためには
o:errorCode
を使用してください。 - type(optional): string(uri)
問題のタイプを識別する絶対URI。 このURIが参照解除されると、「推奨」は、HTMLページなどの問題の判読可能なサマリーを提供します。
object
- user(optional): string
存在しないユーザーまたはアプリケーション。
リリース19.3.1.での導入。
- object ExceptionDetail
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid User or Application",
"status":"400",
"detail":"User or client application does not exist.",
"o:errorCode":"OCE-IDS-001004",
"user":{
"id":"1234"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid Group",
"status":"400",
"detail":"Group does not exist.",
"o:errorCode":"OCE-IDS-001007",
"group":{
"id":"1234"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Too Many Members",
"status":"400",
"detail":"A single request cannot process more than '{maximum}' users and groups. The number of users and groups provided was '{actual}'.",
"o:errorCode":"OCE-IDS-001028",
"maximum":1234,
"actual":1234
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Unsupported Policy Field",
"status":"400",
"detail":"Field '{field}' should not be provided for this policy.",
"o:errorCode":"OCE-SITEMGMT-009036",
"field":"repository"
}
401レスポンス
403レスポンス
404レスポンス
- Cache-Control: string
キャッシュ・メカニズムのディレクティブ。
- Content-Length: string
レスポンス本文のサイズ。
- Content-Type: string
レスポンスのコンテンツ・タイプ。
- object ExceptionDetail
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
- object PolicyNotFoundExceptionDetail-allOf[1]
object
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
- detail(optional): string
この問題の発生に固有の説明。 人間が判読できる、場合によっては複数行の詳細で問題を説明しています。
- instance(optional): string(uri)
エラーに関する詳細を提供するリンクへのURI。
- o:errorCode(optional): string
アプリケーション・エラー・コード。HTTPエラー・コードとは異なります。 このコードは、
title
やdetail
などのフィールドを比較するのではなく、特定のエラーをチェックするために使用する必要があります。 - o:errorDetails(optional): array o:errorDetails
階層構造に複数のエラーがある場合もあります。
- o:errorPath(optional): string
エラーが発生した場所を示すXPathまたはJSONパス。
- status(optional): integer(int32)
エラーに対応するHTTPステータス・コード。
- title(optional): string
問題の短く、判読可能なサマリー。 タイトルは、特定のエラーをチェックする方法としては使用しないでください。そのためには
o:errorCode
を使用してください。 - type(optional): string(uri)
問題のタイプを識別する絶対URI。 このURIが参照解除されると、「推奨」は、HTMLページなどの問題の判読可能なサマリーを提供します。
object
- policy(optional): string
存在しないか、認証されたユーザーから表示可能でないポリシー。
- object ExceptionDetail
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Policy Not Found",
"status":"404",
"detail":"Policy does not exist or has been deleted, or the authenticated user or client application does not have access to the policy.",
"o:errorCode":"OCE-SITEMGMT-009022",
"policy":{
"id":"721af08b-32db-4eee-b6af-0c38d3ba4681"
}
}
409レスポンス
- object ExceptionDetail
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
- object PolicyReadOnlyExceptionDetail-allOf[1]
object
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
- detail(optional): string
この問題の発生に固有の説明。 人間が判読できる、場合によっては複数行の詳細で問題を説明しています。
- instance(optional): string(uri)
エラーに関する詳細を提供するリンクへのURI。
- o:errorCode(optional): string
アプリケーション・エラー・コード。HTTPエラー・コードとは異なります。 このコードは、
title
やdetail
などのフィールドを比較するのではなく、特定のエラーをチェックするために使用する必要があります。 - o:errorDetails(optional): array o:errorDetails
階層構造に複数のエラーがある場合もあります。
- o:errorPath(optional): string
エラーが発生した場所を示すXPathまたはJSONパス。
- status(optional): integer(int32)
エラーに対応するHTTPステータス・コード。
- title(optional): string
問題の短く、判読可能なサマリー。 タイトルは、特定のエラーをチェックする方法としては使用しないでください。そのためには
o:errorCode
を使用してください。 - type(optional): string(uri)
問題のタイプを識別する絶対URI。 このURIが参照解除されると、「推奨」は、HTMLページなどの問題の判読可能なサマリーを提供します。
object
- policy(optional): string
読取り専用ポリシー。
- object ExceptionDetail
HTTPエラー・コードおよびエラー・メッセージに加えて、リクエストが失敗したときにクライアントに追加情報を提供することが適切な場合もあります。 その場合、追加情報がレスポンス本文に含まれます。
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Policy Read Only",
"status":"409",
"detail":"The policy is read-only and cannot be modified.",
"o:errorCode":"OCE-SITEMGMT-009032",
"policy":{
"id":"721af08b-32db-4eee-b6af-0c38d3ba4681"
}
}