MENU

Soracom

Users

SAM デフォルト権限

SAM デフォルト権限は SAM を使用した操作権限管理機能 を拡張する機能です。SAM デフォルト権限を利用することにより、権限管理ルールをすべての SAM ユーザーに対して適用できます。

本機能は例えば、

  • すべての SAM ユーザーに「自分自身のパスワードの設定を可能とする」権限を与える
  • Billing 関係の権限以外を与える (つまり Billing 関係の権限だけを剥奪する)

というようなユースケースにおいて効果的に働きます。

利用方法

ユーザーコンソールのメニューから「セキュリティ」を選択します。

ユーザーコンソールからセキュリティを選択

「セキュリティ」画面のサイドバーメニューから「SAM デフォルト権限設定」を選択します。

セキュリティ画面からSAMデフォルト権限設定を選択

権限管理ルールを設定する画面が出てくるので、適宜権限設定を行い、「保存」をクリックしてください。

SAMデフォルト権限設定画面

SAM デフォルト権限設定を行った直後 (つまり上記画面の「保存」をクリックした直後) は、SAM デフォルト権限は各 SAM ユーザーに 即時反映されません。SAM デフォルト権限を反映するには各 SAM ユーザーが一度ログアウトして、再度ログインしなおす必要があります。

構文

アクセス権限設定のためのパーミッション構文は SAM アクセス権限設定のためのパーミッション構文 と同じです。

権限ルールの適用順序

権限ルールは deny (拒否) のものが 必ず優先 されます。以下に例を示します。

  • 個別 SAM ユーザーは「API Aを許可している」状態で、SAM デフォルト権限設定は「API Aを拒否している」
    • API Aは拒否されます
  • 個別 SAM ユーザーは「API Bを拒否している」状態で、SAM デフォルト権限設定は「API Bを許可している」
    • API Bは拒否されます
  • 個別 SAM ユーザーは「API Cを許可している」状態で、SAM デフォルト権限設定も「API Cを許可している」
    • API Cは許可されます
  • 個別 SAM ユーザーは「API Dを許可している」状態で、SAM デフォルト権限設定ではなにも設定しない
    • API Dは許可されます

以下に SAM デフォルト権限設定ルールの例を示します。

全SAMユーザーからBillingの権限を剥奪する例

{
  "statements": [
    {
      "effect": "deny",
      "api": ["Billing:*"]
    }
  ]
}

全SAMユーザーに「自分自身のパスワードを変更する権限」を付与する例

{
  "statements": [
    {
      "effect": "allow",
      "api": "User:updateUserPassword",
      "condition": "pathVariable('user_name') == samUserName"
    }
  ]
}