6.2.2. IAMロールとIAMグループ¶
API権限管理機能はIAMロールとIAMグループにより実現されます。IAMロールとIAMグループの紐付け、IAMグループとユーザーの紐付けを行うことで一般ユーザーの実行権限を制御できます。
6.2.2.1. IAMロール¶
IAMロールはAPIの実行許可やAPI実行の条件などを示すものです。ホワイトリスト形式で記述します。
管理ユーザーは以下のパラメータをリクエストボディのresourcesに設定することにより、IAMロールを設定します。
basePath | 実行を許可する各APIエンドポイントを指定します。basePathの記述方法は下記をご参照ください。 |
ipAddress | 実行を許可するアクセス元グローバルIPアドレスを指定します。 |
path | 実行を許可するURLのパスを指定します。 |
verb | 実行を許可するメソッドを指定します。GET/PUT/POST/DELETE/PATCHの5つが記述可能です。 |
任意の要素 | 各APIのクエリパラメータやリクエストボディに含まれる値を指定します。例としては、テナントのIDやユーザーのIDなどです。 |
各パラメータではワイルドカードとして*が使用可能です。
使用可能な文字は、以下です。
key:半角英数字、利用可能記号(@,-,‘(シングルクォート),.(ピリオド),_(アンダー))の中から1~128文字で入力してください。
value:半角英数字、利用可能記号(@,-,/,*,‘(シングルクォート),.(ピリオド),_(アンダー))の中から128文字までで入力してください。
1つのIAMロールのresourcesには複数の権限を記述できます。その場合、条件は OR 条件となります。(詳しくは 権限記述におけるAND・OR条件について を参照)
各APIエンドポイントとbasePathの表記の対応は、 Smart Data PlatformのAPIをはじめて利用される方へ をご参照ください。
6.2.2.2. IAMグループ¶
IAMグループはIAMロールをまとめたものです。ユーザーはIAMグループに所属します。ユーザーにはIAMグループに紐付いているIAMロールによる実行権限の制御が適用されます。
6.2.2.3. IAMグループとユーザーの関係¶
ユーザーはIAMグループに所属します。作成された直後のユーザーはデフォルトグループに所属します。(デフォルトグループについては、 デフォルトグループとデフォルトロールについて を参照)
ユーザーには、所属IAMグループに紐付くIAMロールの権限が適用されます。管理ユーザーは一般ユーザーに対して、IAMグループへの紐付けと紐付けの解除が可能です。管理ユーザーは自身の所属グループを変更できません。
また、ユーザーは複数のIAMグループに所属できます。複数のIAMグループに所属するユーザーは各IAMグループの OR 条件が適用されます。(詳しくは 権限記述におけるAND・OR条件について を参照)
警告
どのグループにも所属していないユーザーはSmart Data Platform(以下SDPF)を操作できません。
6.2.2.4. IAMグループとIAMロールの関係¶
IAMロールもユーザーと同様IAMグループに所属します。IAMグループに所属しているユーザーはそのIAMグループに紐付くIAMロールによって実行権限が制御されます。管理ユーザーはIAMロールとIAMグループの紐付けと紐付けの解除が可能です。
IAMロールは複数のIAMグループに紐付けることができます。ある1つのグループに複数のIAMロールが紐付く場合、それらのIAMロールには AND 条件が適用されます。(詳しくは 権限記述におけるAND・OR条件について を参照)
また、初期状態ではデフォルトロールが用意されています。(デフォルトロールについては、 デフォルトグループとデフォルトロールについて を参照)