ポリシーの下にルールを作成する
post
/oaa-policy/policy/v1/{policygid}/rule
リクエスト
パス・パラメータ
- policygid(required): string
ポリシーの識別子
サポートされるメディア・タイプ
- application/xml
- application/json
ルート・スキーマ : schema
型:
object
システム内のポリシー・ルールを定義します
ソースの表示
-
conditionMap: array conditionMap
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
-
conditions: array conditions
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
-
name(required): string
ルールの名前。
-
note: string
ルールのノート(ある場合)
-
policygid(required): string
ポリシーのグローバルID。ルール定義がポリシー定義結果の一部である場合、ポリシーIDは必須ではない可能性があります
-
results(required): object RuleAction
ルールがtrueと評価されたときに返されるアクション。
-
rulegid: string
ルールのグローバル一意識別子。
-
status: string
アクティブまたは無効
-
transactiongid: string
ルール評価に使用されるトランザクションの一意IDであり、フィルタ条件を使用してチェックされます
ネストされたスキーマ: conditionMap
型:
array
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
ソースの表示
- 配列: object ConditionMap
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ネストされたスキーマ: conditions
型:
array
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
ソースの表示
- 配列: object Condition
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ネストされたスキーマ: RuleAction
型:
object
ルールがtrueと評価されたときに返されるアクション。
ソースの表示
-
action: string
アクション・グループ名
-
alert: string
アラート・グループ名
-
score: integer
ルールによって返されるスコア
-
weight: integer
コンテキストに複数のルールがある場合のスコアの重み。
ネストされたスキーマ: ConditionMap
型:
object
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ソースの表示
-
key: string
-
value: object value
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: value
型:
object
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: Condition
型:
object
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ソースの表示
-
conditionId: string
ルール内の条件の更新に使用できる条件のグローバル識別子。
-
conditionKey(required): string
条件の一意キー。同じタイプの複数の条件に対して繰り返すことができます。
-
parameters: array parameters
すべてのオーバーライド・パラメータのリスト。
-
remove: boolean
ルールから条件を削除します。これはオプションです。
ネストされたスキーマ: parameters
型:
array
すべてのオーバーライド・パラメータのリスト。
ソースの表示
- 配列: object ConditionParameter
条件の評価時に必要な条件のパラメータ。
ネストされたスキーマ: ConditionParameter
型:
object
条件の評価時に必要な条件のパラメータ。
ソースの表示
-
operations: string
キーに対して実行された操作。操作は必要でない可能性があります
-
paramname: string
操作に使用するキー
-
scope: string
フィルタ条件。ValueまたはCurrentのいずれか。スコープは必要ありません。
-
value: string
スコープに基づいて照合される値。
ルート・スキーマ : schema
型:
object
システム内のポリシー・ルールを定義します
ソースの表示
-
conditionMap: array conditionMap
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
-
conditions: array conditions
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
-
name(required): string
ルールの名前。
-
note: string
ルールのノート(ある場合)
-
policygid(required): string
ポリシーのグローバルID。ルール定義がポリシー定義結果の一部である場合、ポリシーIDは必須ではない可能性があります
-
results(required): object RuleAction
ルールがtrueと評価されたときに返されるアクション。
-
rulegid: string
ルールのグローバル一意識別子。
-
status: string
アクティブまたは無効
-
transactiongid: string
ルール評価に使用されるトランザクションの一意IDであり、フィルタ条件を使用してチェックされます
ネストされたスキーマ: conditionMap
型:
array
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
ソースの表示
- 配列: object ConditionMap
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ネストされたスキーマ: conditions
型:
array
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
ソースの表示
- 配列: object Condition
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ネストされたスキーマ: RuleAction
型:
object
ルールがtrueと評価されたときに返されるアクション。
ソースの表示
-
action: string
アクション・グループ名
-
alert: string
アラート・グループ名
-
score: integer
ルールによって返されるスコア
-
weight: integer
コンテキストに複数のルールがある場合のスコアの重み。
ネストされたスキーマ: ConditionMap
型:
object
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ソースの表示
-
key: string
-
value: object value
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: value
型:
object
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: Condition
型:
object
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ソースの表示
-
conditionId: string
ルール内の条件の更新に使用できる条件のグローバル識別子。
-
conditionKey(required): string
条件の一意キー。同じタイプの複数の条件に対して繰り返すことができます。
-
parameters: array parameters
すべてのオーバーライド・パラメータのリスト。
-
remove: boolean
ルールから条件を削除します。これはオプションです。
ネストされたスキーマ: parameters
型:
array
すべてのオーバーライド・パラメータのリスト。
ソースの表示
- 配列: object ConditionParameter
条件の評価時に必要な条件のパラメータ。
ネストされたスキーマ: ConditionParameter
型:
object
条件の評価時に必要な条件のパラメータ。
ソースの表示
-
operations: string
キーに対して実行された操作。操作は必要でない可能性があります
-
paramname: string
操作に使用するキー
-
scope: string
フィルタ条件。ValueまたはCurrentのいずれか。スコープは必要ありません。
-
value: string
スコープに基づいて照合される値。
レスポンス
サポートされるメディア・タイプ
- application/xml
- application/json
201レスポンス
ポリシー・ルールが作成されました
ルート・スキーマ: RuleResponse
型:
object
これには、ポリシー・ルールに関連するリクエストされた操作に関する情報が含まれます。
ソースの表示
-
message: string
リクエストのステータスに関連するメッセージ。
-
rule: object schema
システム内のポリシー・ルールを定義します
-
rulegid: string
ルールのグローバル識別子。
-
status: string
成功または失敗を示すリクエストのステータス。
ネストされたスキーマ: schema
型:
object
システム内のポリシー・ルールを定義します
ソースの表示
-
conditionMap: array conditionMap
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
-
conditions: array conditions
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
-
name(required): string
ルールの名前。
-
note: string
ルールのノート(ある場合)
-
policygid(required): string
ポリシーのグローバルID。ルール定義がポリシー定義結果の一部である場合、ポリシーIDは必須ではない可能性があります
-
results(required): object RuleAction
ルールがtrueと評価されたときに返されるアクション。
-
rulegid: string
ルールのグローバル一意識別子。
-
status: string
アクティブまたは無効
-
transactiongid: string
ルール評価に使用されるトランザクションの一意IDであり、フィルタ条件を使用してチェックされます
ネストされたスキーマ: conditionMap
型:
array
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
ソースの表示
- 配列: object ConditionMap
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ネストされたスキーマ: conditions
型:
array
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
ソースの表示
- 配列: object Condition
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ネストされたスキーマ: RuleAction
型:
object
ルールがtrueと評価されたときに返されるアクション。
ソースの表示
-
action: string
アクション・グループ名
-
alert: string
アラート・グループ名
-
score: integer
ルールによって返されるスコア
-
weight: integer
コンテキストに複数のルールがある場合のスコアの重み。
ネストされたスキーマ: ConditionMap
型:
object
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ソースの表示
-
key: string
-
value: object value
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: value
型:
object
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: Condition
型:
object
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ソースの表示
-
conditionId: string
ルール内の条件の更新に使用できる条件のグローバル識別子。
-
conditionKey(required): string
条件の一意キー。同じタイプの複数の条件に対して繰り返すことができます。
-
parameters: array parameters
すべてのオーバーライド・パラメータのリスト。
-
remove: boolean
ルールから条件を削除します。これはオプションです。
ネストされたスキーマ: parameters
型:
array
すべてのオーバーライド・パラメータのリスト。
ソースの表示
- 配列: object ConditionParameter
条件の評価時に必要な条件のパラメータ。
ネストされたスキーマ: ConditionParameter
型:
object
条件の評価時に必要な条件のパラメータ。
ソースの表示
-
operations: string
キーに対して実行された操作。操作は必要でない可能性があります
-
paramname: string
操作に使用するキー
-
scope: string
フィルタ条件。ValueまたはCurrentのいずれか。スコープは必要ありません。
-
value: string
スコープに基づいて照合される値。
401レスポンス
未認可
405レスポンス
無効な入力
ルート・スキーマ: RuleResponse
型:
object
これには、ポリシー・ルールに関連するリクエストされた操作に関する情報が含まれます。
ソースの表示
-
message: string
リクエストのステータスに関連するメッセージ。
-
rule: object schema
システム内のポリシー・ルールを定義します
-
rulegid: string
ルールのグローバル識別子。
-
status: string
成功または失敗を示すリクエストのステータス。
ネストされたスキーマ: schema
型:
object
システム内のポリシー・ルールを定義します
ソースの表示
-
conditionMap: array conditionMap
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
-
conditions: array conditions
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
-
name(required): string
ルールの名前。
-
note: string
ルールのノート(ある場合)
-
policygid(required): string
ポリシーのグローバルID。ルール定義がポリシー定義結果の一部である場合、ポリシーIDは必須ではない可能性があります
-
results(required): object RuleAction
ルールがtrueと評価されたときに返されるアクション。
-
rulegid: string
ルールのグローバル一意識別子。
-
status: string
アクティブまたは無効
-
transactiongid: string
ルール評価に使用されるトランザクションの一意IDであり、フィルタ条件を使用してチェックされます
ネストされたスキーマ: conditionMap
型:
array
UIルールを再構築するためのキー値のペアのマップ。OAAルールの必須要素は、entityRefId、操作、値(文字列の配列)、式、モード、isgroupです。
ソースの表示
- 配列: object ConditionMap
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ネストされたスキーマ: conditions
型:
array
ルールの実行時に評価される条件の配列。ルールに関連付けられたアクションを返すには、すべての条件がtrueである必要があります。
ソースの表示
- 配列: object Condition
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ネストされたスキーマ: RuleAction
型:
object
ルールがtrueと評価されたときに返されるアクション。
ソースの表示
-
action: string
アクション・グループ名
-
alert: string
アラート・グループ名
-
score: integer
ルールによって返されるスコア
-
weight: integer
コンテキストに複数のルールがある場合のスコアの重み。
ネストされたスキーマ: ConditionMap
型:
object
ルールの再構築に使用されるキー/値のペアのマップ、またはルールに必要な追加パラメータをマップで渡すことができます
ソースの表示
-
key: string
-
value: object value
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: value
型:
object
値は、jsonオブジェクトまたは単純な文字列になります。
ネストされたスキーマ: Condition
型:
object
評価する条件。パラメータを指定しない場合、すべての条件がデフォルト値で評価されます。
ソースの表示
-
conditionId: string
ルール内の条件の更新に使用できる条件のグローバル識別子。
-
conditionKey(required): string
条件の一意キー。同じタイプの複数の条件に対して繰り返すことができます。
-
parameters: array parameters
すべてのオーバーライド・パラメータのリスト。
-
remove: boolean
ルールから条件を削除します。これはオプションです。
ネストされたスキーマ: parameters
型:
array
すべてのオーバーライド・パラメータのリスト。
ソースの表示
- 配列: object ConditionParameter
条件の評価時に必要な条件のパラメータ。
ネストされたスキーマ: ConditionParameter
型:
object
条件の評価時に必要な条件のパラメータ。
ソースの表示
-
operations: string
キーに対して実行された操作。操作は必要でない可能性があります
-
paramname: string
操作に使用するキー
-
scope: string
フィルタ条件。ValueまたはCurrentのいずれか。スコープは必要ありません。
-
value: string
スコープに基づいて照合される値。
500レスポンス
内部サーバー・エラー
503レスポンス
サービス使用不可
例
次の例は、ポリシーのルールを作成するサンプルのリクエストとレスポンスを示します。
JSON形式でポリシーのルールを作成するcURLコマンド
curl --location --request POST '<PolicyUrl>/oaa-policy/policy/v1/141_73875f1eda644e4196248e5ecc824364c5a6c1954350a9927942c6d50c4ed171/rule' \ --header 'Content-Type: application/json' \ --header 'Authorization: Basic <Base64Encoded(<username>:<password>)>' \ --data ' { "name": "Factor and IP Rule", "status": "Active", "note": "Factor and IP Rule", "conditionMap": [ { "key": "IpGroupCondition", "value": { "mode": "BASIC", "expression": "context.ip.inGroup(113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b)", "values": [ "113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b" ], "isgroup": true, "attribute": "Context.IPAddress", "operator": "In Group" } } ], "results": { "action": "111_4141dd92a40fa2ff8d09153e62c658c67f3c7ac014ce89c0c103896230457718", "score": 300, "weight": 100 } }'
JSON形式のサンプル・レスポンス
{ "status": "201", "message": "Rule created successfully.", "rulegid": "146_faef323e5ee26bac62d48a9bf9ded1da3f9655731566b0e3628ce86e21c9e46a", "rule": { "name": "Factor and IP Rule", "rulegid": "146_faef323e5ee26bac62d48a9bf9ded1da3f9655731566b0e3628ce86e21c9e46a", "policygid": "141_73875f1eda644e4196248e5ecc824364c5a6c1954350a9927942c6d50c4ed171", "status": "ACTIVE", "note": "Factor and IP Rule", "conditions": [ { "conditionKey": "always_on_user.condition0", "conditionId": "145_5f7d4a93ac1ad362c70a43a9b64351cf6789b3a0c55b425145c374aca7628bc1", "parameters": [ { "paramname": "isTrue", "value": "true" } ] } ], "conditionMap": [ { "key": "IpGroupCondition", "value": { "mode": "BASIC", "expression": "context.ip.inGroup(113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b)", "values": [ "113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b" ], "isgroup": true, "attribute": "Context.IPAddress", "operator": "In Group" } } ], "results": { "action": "111_4141dd92a40fa2ff8d09153e62c658c67f3c7ac014ce89c0c103896230457718", "score": 300, "weight": 100 } } }
XML形式でポリシーのルールを作成するcURLコマンド
curl --location --request POST '<PolicyUrl>/oaa-policy/policy/v1/141_73875f1eda644e4196248e5ecc824364c5a6c1954350a9927942c6d50c4ed171/rule' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --header 'Authorization: Basic <Base64Encoded(<username>:<password>)>' \ --data ' <?xml version="1.0" encoding="UTF-8" ?> <RuleRequest> <name>Factor and IP Rule</name> <status>Active</status> <note>Factor and IP Rule</note> <conditionMap> <key>IpGroupCondition</key> <value> <mode>BASIC</mode> <expression>context.ip.inGroup(113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b)</expression> <values>113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b</values> <isgroup>true</isgroup> <attribute>Context.IPAddress</attribute> <operator>In Group</operator> </value> </conditionMap> <results> <action>111_4141dd92a40fa2ff8d09153e62c658c67f3c7ac014ce89c0c103896230457718</action> <score>300</score> <weight>100</weight> </results> </RuleRequest> '
XML形式のサンプル・レスポンス
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <RuleResponse> <status>201</status> <message>Rule created successfully.</message> <rulegid>146_faef323e5ee26bac62d48a9bf9ded1da3f9655731566b0e3628ce86e21c9e46a</rulegid> <rule> <name>Factor and IP Rule</name> <rulegid>146_faef323e5ee26bac62d48a9bf9ded1da3f9655731566b0e3628ce86e21c9e46a</rulegid> <policygid>141_73875f1eda644e4196248e5ecc824364c5a6c1954350a9927942c6d50c4ed171</policygid> <status>ACTIVE</status> <note>Factor and IP Rule</note> <conditions> <conditionKey>always_on_user.condition0</conditionKey> <conditionId>145_5f7d4a93ac1ad362c70a43a9b64351cf6789b3a0c55b425145c374aca7628bc1</conditionId> <parameters> <paramname>isTrue</paramname> <value>true</value> </parameters> </conditions> <conditionMap> <key>IpGroupCondition</key> <value> <mode>BASIC</mode> <expression>context.ip.inGroup(113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b)</expression> <values>113_91d0cc32aecf15d094e3953b17a7dd904a3fb71d2f4152934efb56caa898796b</values> <isgroup>true</isgroup> <attribute>Context.IPAddress</attribute> <operator>In Group</operator> </value> </conditionMap> <results> <action>111_4141dd92a40fa2ff8d09153e62c658c67f3c7ac014ce89c0c103896230457718</action> <score>300</score> <weight>100</weight> </results> </rule> </RuleResponse>