2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IBM Cloud: App IDのユーザーに動的に権限を設定する

Last updated at Posted at 2023-04-28

1. はじめに

App IDユーザーがIBM CloudのCustomer Portalにログインしても、最初は何もできない。当然ながら何も権限が付与されていないからである。特に、App IDを使ってユーザーを管理している際に困るのは、初回ログインが完了するまでユーザーが登録されないことである。もちろんユーザーに1度ログインしてもらい、連絡をもらってから管理者が権限を割り当てるということもできるだろうが、運用的に非常に面倒である。
IBM CloudのIAMでは、ユーザープロファイルの属性の内容に応じて、動的に権限を割り当てる機能があるので、その機能を利用してこの問題を解決したい。
今回は、VPN for VPCのClient to Server VPN機能を利用するための権限を動的に付与する方法を例に紹介したいと思う。

P.S. App IDのユーザーでIBM Cloudのポータルを利用する際に動的にアクセスグループを設定するという記事も参考にさせていただきました。

2. アクセスグループの作成と動的ルールの設定

  • アクセスグループ名はClient-to-Site VPNとする。image.png
  • このアクセスグループに、Client to Server VPNを利用するための権限を付与する。
    • Accessに移動し、Assign accessを押下。image.png
    • VPC Infrastructure ServicesというServiceに対して、Users of the VPN server need this role to connect to the VPN serverを割り当てる。image.png
    • 登録結果。image.png
  • 動的ルールの追加
    • Dynamic rulesに移動し、Addを押下。image.png
    • rule名や、連携するApp IDのIDP(https://cloud.ibm.com/iam/identity-providersで登録している情報)を選択。以前はIDPのrealm IDを指定する必要があったが、現在はUIから選択可能となっていて設定が容易になっている。今回は、ユーザー属性に"isclientvpn"="true"となっていた場合に、権限が付与されるようになっている。またこの権限のセッション時間はデフォルトでログインしてから1時間である。image.png
    • 設定完了後の結果。image.png

3. ユーザー設定に条件に適合する属性を追加

今回はApp IDのCloud Directoryで管理しているユーザーで、まだ一度もログインしたことがないユーザーを使って検証してみる。

  • ユーザーの詳細情報を確認。image.png
  • Custom Attributesとして以下を設定。
{"isclientvpn":"true"}
  • 結果、以下のようになる。image.png

4. App IDユーザーでのログインした際の結果

  • IAMでユーザー情報を確認した結果。今回作成したアクセスグループが動的に割り当てられている(有効期限が1時間)
    image.png
  • IAMでアクセスグループを確認した結果。対象ユーザーが動的に追加されている(有効期限が1時間)image.png
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?