6.2.2. IAMロールとIAMグループ

API権限管理機能はIAMロールとIAMグループにより実現されます。IAMロールとIAMグループの紐付け、IAMグループとユーザーの紐付けを行うことで一般ユーザーの実行権限を制御できます。

6.2.2.1. IAMロール

IAMロールはAPIの実行許可やAPI実行の条件などを示すものです。ホワイトリスト形式で記述します。
管理ユーザーは以下のパラメータをリクエストボディのresourcesに設定することにより、IAMロールを設定します。
表 6.2.2.1.1 用語
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条件について を参照)
また、初期状態ではデフォルトロールが用意されています。(デフォルトロールについては、 デフォルトグループとデフォルトロールについて を参照)