ポリシーを評価する
post
/oaa-policy/policy/v1/expression
リクエストに存在するポリシー式を検証し、式がtrueまたはfalseに評価できる場合は成功を返します。構文またはコンパイル・エラーが原因で式を評価できない場合は、エラーが返されます。
リクエスト
この操作にはリクエスト・パラメータはありません。
サポートされるメディア・タイプ
- application/xml
- application/json
ルート・スキーマ : schema
型:
objectポリシー式オブジェクト
ソースの表示
-
expression: string
ポリシー・デプロイメントで構成されたデフォルトのポリシー・エンジンによって検証される式。
ルート・スキーマ : schema
型:
objectポリシー式オブジェクト
ソースの表示
-
expression: string
ポリシー・デプロイメントで構成されたデフォルトのポリシー・エンジンによって検証される式。
レスポンス
サポートされるメディア・タイプ
- application/xml
- application/json
201レスポンス
ポリシー式検証のレスポンス。
ルート・スキーマ: PolicyExpressionResponse
型:
objectポリシー式オブジェクト
ソースの表示
-
expression: string
検証された式。リクエスト・オブジェクトの式と同じです。
-
message: string
エラーの場合、メッセージはリクエストに存在する式のエラーを示します。
-
status: string
結果に指定された式に基づく成功またはエラー。
401レスポンス
未認可
405レスポンス
無効な入力
ルート・スキーマ: PolicyExpressionResponse
型:
objectポリシー式オブジェクト
ソースの表示
-
expression: string
検証された式。リクエスト・オブジェクトの式と同じです。
-
message: string
エラーの場合、メッセージはリクエストに存在する式のエラーを示します。
-
status: string
結果に指定された式に基づく成功またはエラー。
500レスポンス
内部サーバー・エラー
503レスポンス
サービス使用不可
例
次の例は、リクエストに存在し、成功を返すポリシー式を検証するサンプルのリクエストとレスポンスを示します。
JSON形式でポリシー式を検証するcURLコマンド
curl --location --request POST '<PolicyUrl>/oaa-policy/policy/v1/expression' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic <Base64Encoded(<username>:<password>)>' \
--data '{
"expression": "context.ip.inRange('\''127_ddd32e7186d66b2cb96cc4608ded0bb7d6ae4a48b1fc1894c69e715cf262e7ad'\'')"
}'JSON形式のサンプル・レスポンス
{
"expression": "context.ip.inRange('127_ddd32e7186d66b2cb96cc4608ded0bb7d6ae4a48b1fc1894c69e715cf262e7ad')",
"status": "SUCCESS"
}XML形式でポリシー式を検証するcURLコマンド
curl --location --request POST '<PolicyUrl>/oaa-policy/policy/v1/expression' \
--header 'Content-Type: application/xml' \
--header 'Accept: application/xml' \
--header 'Authorization: Basic <Base64Encoded(<username>:<password>)>' \
--data '<?xml version="1.0" encoding="UTF-8" ?>
<expression>context.ip.inRange("127_ddd32e7186d66b2cb96cc4608ded0bb7d6ae4a48b1fc1894c69e715cf262e7ad")</expression>
'XML形式のサンプル・レスポンス
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<PolicyExpressionResponse>
<expression>context.ip.inRange("127_ddd32e7186d66b2cb96cc4608ded0bb7d6ae4a48b1fc1894c69e715cf262e7ad")</expression>
<status>SUCCESS</status>
</PolicyExpressionResponse>