public class Statement extends Object
一つのステートメントは、特定のIIJ GIOストレージ&アナリシスサービス リソースに対する アクセスを許可・拒否するルールを表し、誰がリソースに対してアクセスできるかを 定義します。 また、ステートメントは、いつステートメントが効力を持つかについての条件を含むことが 出来ます。
ステートメントは「Aが、BをCにする権限をDの場合に持つ」という形式をとります。 それぞれ
アクセスコントロールポリシーを定義するために、幾つかのリソースやコンディションが 用意されています。適切なアクセスコントロールを行うために、これらを組み合わせて ステートメントを定義してください
Modifier and Type | Class and Description |
---|---|
static class |
Statement.Effect
エフェクトは、ポリシーのステートメントを評価した際に返す値の列挙型です。
ポリシーのステートメントはアクセスの許可または拒否を返します
|
Constructor and Description |
---|
Statement(Statement.Effect effect)
新たにエフェクトを指定して、アクセスコントロールポリシーのステートメントを
構築します。
|
Modifier and Type | Method and Description |
---|---|
List<Action> |
getActions()
このステートメントで適用するアクションのリストを返します。
アクションはステートメントで特定のサービスに対する操作を許可または制限したい
場合に使用します。
たとえば、オブジェクトの読み取りはすべてのユーザに許可したいが、書き込みや
バケットの操作は行わせたくない場合などです
|
List<Condition> |
getConditions()
このステートメントに関連付けられたコンディションのリストを返します。
コンディションはステートメントの評価の際に使用される条件を定義します。
|
Statement.Effect |
getEffect()
ステートメントが評価された際に返される、結果のエフェクトを返します。
ポリシーステートメントは、許可又は拒否のいずれかをとります。
|
String |
getId()
このステートメントのIDを返します。ステートメントIDは複数のステートメントから
一つを特定する手助けになるので、可読性の高い、意味を持った値を指定します。
|
List<Principal> |
getPrincipals()
このステートメントに関連付けられた、プリンシパルのリストを返します。
プリンシパルは、このステートメントを適用するユーザアカウントを示します
|
List<Resource> |
getResources()
このステートメントに関連付けられたリソースを返します。
リソースは、ステートメントがアクセスを許可・拒否する対象となります。
|
void |
setActions(Collection<Action> actions)
このステートメントで適用するアクションのリストをセットします。
アクションはステートメントで特定のサービスに対する操作を許可または制限したい
場合に使用します。
たとえば、オブジェクトの読み取りはすべてのユーザに許可したいが、書き込みや
バケットの操作は行わせたくない場合などです
|
void |
setConditions(List<Condition> conditions)
このステートメントに関連付けられたコンディションのリストをセットします。
コンディションはステートメントの評価の際に使用される条件を定義します。
|
void |
setEffect(Statement.Effect effect)
ステートメントが評価された際に返される、結果のエフェクトをセットします。
ポリシーステートメントは、許可又は拒否のいずれかをとります。
|
void |
setId(String id)
このステートメントのIDをセットします。ステートメントIDは複数のステートメントから
一つを特定する手助けになるので、可読性の高い、意味を持った値を指定します。
|
void |
setPrincipals(Collection<Principal> principals)
このステートメントに関連付けられた、プリンシパルのリストをセットします。
プリンシパルは、このステートメントを適用するユーザアカウントを示します
|
void |
setResources(Collection<Resource> resources)
このステートメントに関連付けられたリソースをセットします。
リソースは、ステートメントがアクセスを許可・拒否する対象となります。
|
Statement |
withActions(Action... actions)
このステートメントで適用するアクションのリストをセットし、連続したメソッドの
呼び出しのために アップデートしたこのオブジェクトを返します。
|
Statement |
withConditions(Condition... conditions)
このステートメントに関連付けられたコンディションのリストをセットし、
連続したメソッドの呼び出しのために アップデートしたこのオブジェクトを返します。
コンディションはステートメントの評価の際に使用される条件を定義します。
|
Statement |
withId(String id)
このステートメントのIDをセットし、連続したメソッドの呼び出しのために
アップデートしたこのオブジェクトを返します。
ステートメントIDは複数のステートメントから一つを特定する手助けになるので、
可読性の高い、意味を持った値を指定します。
|
Statement |
withPrincipals(Principal... principals)
このステートメントに関連付けられた、プリンシパルのリストをセットし
連続したメソッドの呼び出しのために アップデートしたこのオブジェクトを返します。
プリンシパルは、このステートメントを適用するユーザアカウントを示します
|
Statement |
withResources(Resource... resources)
このステートメントに関連付けられたリソースをセットし、連続したメソッドの
呼び出しのために アップデートしたこのオブジェクトを返します。
リソースは、ステートメントがアクセスを許可・拒否する対象となります。
|
public Statement(Statement.Effect effect)
有効なステートメントとしてリクエストを送信する前に、プリンシパル・リソース・ アクション(および、オプションとしてコンディション)をステートメントに設定して ください。
effect
- このステートメントが、すべての条件(プリンシパル・リソース・
アクション・コンディション)に一致した場合にとるエフェクト
(アクセスを許可するか、拒否するか)public String getId()
ステートメントIDは、ポリシーの中でユニークである必要がありますが、グローバル にはユニークである必要はありません、。
もし、ステートメントにIDを指定しなかった場合は、ステートメントをポリシーに追加 した時点で自動的に割り当てられます。
開発者は、同一のステートメントIDを複数のステートメントに使用しないよう注意して ください。同じステートメントIDを異なったポリシーで再利用するのは問題ありません。
public void setId(String id)
ステートメントIDは、ポリシーの中でユニークである必要がありますが、グローバル にはユニークである必要はありません、。
もし、ステートメントにIDを指定しなかった場合は、ステートメントをポリシーに追加 した時点で自動的に割り当てられます。
開発者は、同一のステートメントIDを複数のステートメントに使用しないよう注意して ください。同じステートメントIDを異なったポリシーで再利用するのは問題ありません。
id
- ステートメントIDpublic Statement withId(String id)
ステートメントIDは、ポリシーの中でユニークである必要がありますが、グローバル にはユニークである必要はありません、。
もし、ステートメントにIDを指定しなかった場合は、ステートメントをポリシーに追加 した時点で自動的に割り当てられます。
開発者は、同一のステートメントIDを複数のステートメントに使用しないよう注意して ください。同じステートメントIDを異なったポリシーで再利用するのは問題ありません。
id
- ステートメントIDpublic Statement.Effect getEffect()
public void setEffect(Statement.Effect effect)
effect
- このポリシーの結果となるエフェクトpublic List<Action> getActions()
public void setActions(Collection<Action> actions)
actions
- このステートメントを適用するアクションのリストpublic Statement withActions(Action... actions)
アクションはステートメントで特定のサービスに対する操作を許可または制限したい 場合に使用します。 たとえば、オブジェクトの読み取りはすべてのユーザに許可したいが、書き込みや バケットの操作は行わせたくない場合などです
actions
- このステートメントを適用するアクションのリストpublic List<Resource> getResources()
public void setResources(Collection<Resource> resources)
resources
- このステートメントに関連付けられたリソースpublic Statement withResources(Resource... resources)
resources
- このステートメントに関連付けられたリソースpublic List<Condition> getConditions()
たとえば、ステートメントを特定のIPアドレスレンジからのアクセスや特定の時間 以降のアクセスについて許可したい場合などに利用できます。
複数のコンディションがステートメントに含まれている場合、すべてのコンディションが 評価の際にtrueとなる場合にのみ、ステートメントが効果を持ちます
public void setConditions(List<Condition> conditions)
たとえば、ステートメントを特定のIPアドレスレンジからのアクセスや特定の時間 以降のアクセスについて許可したい場合などに利用できます。
複数のコンディションがステートメントに含まれている場合、すべてのコンディションが 評価の際にtrueとなる場合にのみ、ステートメントが効果を持ちます
conditions
- このステートメントに関連付けられたコンディションのリストpublic Statement withConditions(Condition... conditions)
たとえば、ステートメントを特定のIPアドレスレンジからのアクセスや特定の時間 以降のアクセスについて許可したい場合などに利用できます。
複数のコンディションがステートメントに含まれている場合、すべてのコンディションが 評価の際にtrueとなる場合にのみ、ステートメントが効果を持ちます
conditions
- このステートメントに関連付けられたコンディションのリストpublic List<Principal> getPrincipals()
public void setPrincipals(Collection<Principal> principals)
ポリシーでユーザによるアクセスコントロールを行なわない場合は、
Principal.AllUsers
を用いることで、すべてのユーザに対する
ポリシーを作成することができます
principals
- このステートメントに関連付けられた、プリンシパルのリストpublic Statement withPrincipals(Principal... principals)
ポリシーでユーザによるアクセスコントロールを行なわない場合は、
Principal.AllUsers
を用いることで、すべてのユーザに対する
ポリシーを作成することができます
principals
- このステートメントに関連付けられた、プリンシパルのリストCopyright © 2018. All rights reserved.