POLICY API
K2HR3 REST APIのポリシー/ルール(POLICY)に関連するAPI群です。
POST
Scoped User Tokenを指定して、リソース(RESOURCE)の情報を設定(新規作成、更新)します。
Role Tokenを指定して、リソース(RESOURCE)の情報を設定(更新)します。
Token未指定で、リソース(RESOURCE)の情報を設定(更新)します。
Scoped User Tokenの場合に限り、エリアス(ALIAS)の設定ができます。
Endpoint(URL)
http(s)://API SERVER:PORT/v1/policy
Header
Content-Type: application/json
x-auth-token: U=<Scoped User Token>
Request Body
{
policy: {
name: <policy name>
effect: <allow or deny>
action: [<action yrn full path>,...]
resource: [<resource yrn full path>,...]
condition: null or undefined
alias: [<policy yrn full path>,...]
}
}
- name
ポリシー/ルール(POLICY)へのパス名もしくは、YRNフルパスを指定します。 - effect
対象のポリシー/ルール(POLICY)に設定する効果(EFFECT)を指定します。値は、”allow”、”deny”のいずれかを指定します。
省略した場合、空文字の場合には”deny”となります。 - action
アクセス方法(ACTION)を指定します。
アクセス方法(ACTION)は、”yrn:yahoo::::action:read” もしくは “yrn:yahoo::::action:write” を1つ、もしくは両方指定することができ、配列として設定します。
1つの場合には、文字列としての指定ができます。 - resource
リソース(RESOURCE)のYRNフルパスを指定します。
指定しない場合には、未指定、null、空文字として設定します。
1つの指定の場合には文字列としての指定が可能です。
複数指定する場合には、配列として指定します。 - alias
エリアス(ALIAS)として指定する他ポリシー/ルール(POLICY)へのYRNフルパスを指定します。
指定しない場合には、未指定、null、空文字として設定します。
1つの指定の場合には文字列としての指定が可能です。
複数指定する場合には、配列として指定します。
Response status
201、40x
Response Body(JSON)
{
result: <true/false>
message: <null or error message string>
}
- result
APIの処理結果をtrue/falseで返します。 - message
処理結果がfalse(失敗)のときに、エラーメッセージが格納されます。
PUT
Scoped User Tokenを指定して、リソース(RESOURCE)の情報を設定(新規作成、更新)します。
Role Tokenを指定して、リソース(RESOURCE)の情報を設定(更新)します。
Token未指定で、リソース(RESOURCE)の情報を設定(更新)します。
Scoped User Tokenの場合に限り、エリアス(ALIAS)の設定ができます。
Endpoint(URL)
http(s)://API SERVER:PORT/v1/policy?urlarg
Header
Content-Type: application/json
x-auth-token: U=<Scoped User Token>
URL Arguments
- name=policy path or yrn full policy path
ポリシー/ルール(POLICY)へのパス名もしくは、YRNフルパスを指定します。 - effect=json effect array
対象のポリシー/ルール(POLICY)に設定する効果(EFFECT)を指定します。値は、”allow”、”deny”のいずれかを指定します。
省略した場合、空文字の場合には”deny”となります。 - action=json action array
アクセス方法(ACTION)を指定します。
アクセス方法(ACTION)は、”yrn:yahoo::::action:read” もしくは “yrn:yahoo::::action:write” を1つ、もしくは両方指定することができ、配列として設定します。
1つの場合には、文字列としての指定ができます。 - resource=json yrn full resource path array
リソース(RESOURCE)のYRNフルパスを指定します。
指定しない場合には、未指定、null、空文字として設定します。
1つの指定の場合には文字列としての指定が可能です。
複数指定する場合には、配列として指定します。 - alias=json yrn full policy path array
エリアス(ALIAS)として指定する他ポリシー/ルール(POLICY)へのYRNフルパスを指定します。
指定しない場合には、未指定、null、空文字として設定します。
1つの指定の場合には文字列としての指定が可能です。
複数指定する場合には、配列として指定します。
Response status
201、40x
Response Body(JSON)
{
result: <true/false>
message: <null or error message string>
}
- result
APIの処理結果をtrue/falseで返します。 - message
処理結果がfalse(失敗)のときに、エラーメッセージが格納されます。
GET
ポリシー/ルール(POLICY)のデータを取得するためのAPIです。
サービス(SERVICE)が指定された場合には、サービス(SERVICE)とテナント(TENANT)で示されるYRNパス以下のポリシー/ルール(POLICY)の情報が返されます。
Endpoint(URL)
http(s)://API SERVER:PORT/v1/policy/policy path or yrn full policy path{?service=service name}
Header
Content-Type: application/json
x-auth-token: U=<Scoped User Token>
URL argument
- service=service name
サービス名を指定します。指定されている場合には、サービス(SERVICE)とテナント(TENANT)で示されるYRNパス以下のPolicyを返すことになります。
URLパスにフルYRNパスでpolicyを指定している場合に、本パラメータが指定されているときにはその名前が同じであるか検証されます。
Response status
200、40x
Response Body(JSON)
{
result: <true/false>
message: <null or error message string>
policy: {
name: <policy name>,
effect: <allow or deny>,
action: [<action yrn full path>, ...],
resource: [<resource yrn full path>, ...],
alias: [<policy yrn full path>, ...]
}
}
- result
APIの処理結果をtrue/falseで返します。 - message
処理結果がfalse(失敗)のときに、エラーメッセージが格納されます。 - policy:name
ポリシー/ルール(POLICY)名が返されます。 - policy:effect
ポリシー/ルール(POLICY)のeffectの値(”allow”、”deny”)が格納されます。 - policy:action
ポリシー/ルール(POLICY)のactionの配列が格納されます。 - policy:resource
ポリシー/ルール(POLICY)に設定されているリソース(RESOURCE)のYRNフルパスが配列で返されます。 - policy:alias
ポリシー/ルール(POLICY)に設定されているエリアス(ALIAS)である他ポリシー/ルール(POLICY)のYRNフルパスが配列で返されます。
HEAD
ポリシー/ルール(POLICY)の内容を確認するためのAPIです。
テナント(TENANT)名とリソース(RESOURCE)の(YRNフルパス)を指定して、特定のアクセス方法(ACTION)が実行できるか確認します。
Endpoint(URL)
http(s)://API SERVER:PORT/v1/policy/yrn full policy path?urlarg
Header
Content-Type: application/json
URL Arguments
- tenant=tenant name
テナント(TENANT)名を指定します。 - resource=yrn full resource path
確認したいリソース(RESOURCE)へのYRNフルパスを指定します。 - action=action type 確認したいアクセス方法(ACTION)を指定します。”yrn:yahoo::::action:read”もしくは、”yrn:yahoo::::action:write”を指定します。
- service=service name
サービス名を指定します。指定されている場合には、サービス(SERVICE)とテナント(TENANT)で示されるYRNパス以下のPolicyを返すことになります。
URLパスにフルYRNパスでpolicyを指定している場合に、本パラメータが指定されているときにはその名前が同じであるか検証されます。
Response status
204、40x
Response Body(JSON)
なし
DELETE
ポリシー/ルール(POLICY)を削除します。
Endpoint(URL)
http(s)://API SERVER:PORT/v1/policy/policy path or yrn full policy path
Header
Content-Type: application/json
x-auth-token: U=<Scoped User Token>
Response status
204、40x
Response Body(JSON)
なし
RESOURCE API REST API TENANT API