[Identity Management] IDCS Users Can Now Use the Oracle Cloud Infrastructure SDK and CLI

原文はこちら。
https://blogs.oracle.com/cloud-infrastructure/idcs-users-can-now-use-the-oracle-cloud-infrastructure-sdk-and-cli

Oracle Identity Cloud Serviceを使用したフェデレーション機能の強化を発表します。本日から利用可能で、IDCSとフェデレーションされているユーザーは、Oracle Cloud Infrastructure SDKおよびCLIに直接アクセスできます。

この機能拡張は、ガバナンスと管理タスクの簡素化を含む、幅広いユースケースをサポートするもので、すべてのCLIアクセスにIDCSユーザーを使用できるようになりました。例えば、IDCSユーザーはスクリプトを使用して、CLIを使用して共通タスクを自動化するだけでなく、OCIのタスクを他のインフラストラクチャ・ツールやシステムと統合することもできますし、ファイルをObject Storageにコピーするスクリプトを作成したい場合、IDCSユーザーを使えるようになりました。もうOracle Cloud Infrastructureのユーザーを作る必要はありません。この結果、保護、管理対象のユーザーの個数を劇的に削減できます。

フェデレーションを使用すると、ID管理ソフトウェアを使用してユーザーとグループを管理できます。2017年12月以降に作成されたすべてのテナントには自動的にIDCSとのフェデレーションが構成されています。これはつまり、現在のユーザーがIDCSユーザーの場合、Oracle Cloud ApplicationおよびOracle Cloud Infrastructureを含むすべてのOracle Cloudソリューションにわたって同じ資格証明セットを活用できる、ということです。さらに、Oracle Cloud InfrastructureグループにマップされたIDCSグループのメンバーであるすべてのユーザーは、IDCSからOracle Cloud Infrastructureに同期されます。この同期により、どのIDCSユーザーがOracle Cloud Infrastructureにアクセスできるのかを管理できると共に、全てのユーザー管理をIDCSに統合できます。この新機能を活用するには、以下のドキュメントに記載の設定手順に従って構成する必要があります。
Upgrading Your Oracle Identity Cloud Service Federation
https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/usingscim.htm#Oracle
続いて、この機能のおかげで劇的に簡素化される、コスト管理のシナリオをご紹介します。SDKを使って、CostCenterというコストトラッキングタグを持たないComputeインスタンスを発見し、停止するというPythonスクリプトを実行したい、としましょう。Oracle Cloud Infrastructureのローカルユーザーを作成するのではなく、IDCSのユーザーを設定してこのスクリプトを実行できます。このシナリオは以下の手順で実行できます。

Step 1: Ensure that your federation has been upgraded

前提となる設定をまだ実施していない場合は、以下のドキュメントの記載に従って実施してください。
Upgrading Your Oracle Identity Cloud Service Federation
https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/usingscim.htm#Oracle

Step 2: Set up the user in IDCS and associate that user with the correct groups

Identity Providerからすべてのユーザを管理するのは、ユーザIDを管理する上でよりスケーラブルで、管理しやすく、安全な方法です。最低特権の原則に従い、IDCSユーザーを作成し、そのユーザーは、自身の作業を行う上で最低限必要なIDCSグループにのみ関連付けてください。

Step 3: Set up the Oracle Cloud Infrastructure group

このタスクに使用されるローカルのOracle Cloud Infrastructureグループを作成し、作業に必要なアクセス制御のみを可能にするポリシーがあることを確認します。必要な管理者(たとえば、Computeインスタンス管理者)のタイプに特化したグループを設定するようにしてください。きめ細かいグループおよびアクセス・ポリシーの設定に関するベスト・プラクティスの詳細は、以下のホワイトペーパーをご覧ください。なお、マッピング時にグループを作成することもできます。
Oracle Cloud Infrastructure Security
https://cloud.oracle.com/iaas/whitepapers/oci_security.pdf

Step 4: Map the IDCS group to the Oracle Cloud Infrastructure group

以下のドキュメントの記述に従ってグループおよびユーザーを追加し、IDCSからOracle Cloud Infrastructureの同等のグループに正しいグループをマップするようにしてください。IDCSからテナントで作成されたユーザーが表示されれば成功です(フェデレーションされたユーザーのみを表示できるフィルタがあります)。マッピング時にグループを作成することもできます。
Adding Groups and Users for Tenancies Federated with Oracle Identity Cloud Service
https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/addingidcsusersandgroups.htm#

Step 5: Set up the user with an API key

IDCSユーザーがOracle Cloud Infrastructureでプロビジョニングされたユーザーとして存在するので、APIキーペアを作成し、そのキーペアをユーザーにアップロードする必要があります。各ユーザーはそれぞれキーペアを持ちます。詳細は以下のSDKの設定に関するドキュメントをご覧ください。
Required Keys and OCIDs
https://docs.cloud.oracle.com/iaas/Content/API/Concepts/apisigningkey.htm

Step 6: Check the user's capabilities 

最終チェックとして、ユーザーがCLIもしくはSDKを利用できることを確認しましょう。また、SDKのみ利用可能でWebコンソールは利用できなくすることもできます。

これでIDCSユーザーの設定が完了したので、SDKを活用し、Oracle Cloud Infrastructureユーザーに権限が付与されたスクリプトを実行できます。

Tips

  • ユーザー名の前にIdentity Providerの名前が付いている場合、そのユーザーはフェデレートされていることがわかります。デフォルトでは、IDCSとのフェデレーションがなされているユーザーにはoracleidentitycloudserviceがついています。具体的には、oracleidentitycloudservice/Martinという感じです。
  • ユーザーが複製されなかった場合、設定手順とグループ間のマッピングを確認してください。それでもうまくいかない場合には、My Oracle Supportにサポートを依頼してください。
    My Oracle Support
    https://support.oracle.com/
  • マッピングされたグループに割り当てられたユーザーのみが複製されます。ユーザーは存在するものの、そのユーザーが所望のIDCSユーザーではない場合、当該ユーザーはIDCSからOracle Cloud Infrastructureにマッピングされたグループに所属していないということです。
  • SDKもしくはCLIを使うためには、CLIまたはSDKを実行するクライアントに、クライアントマシンに一致する秘密鍵が格納されている必要があります。不適切なアクセスを防ぐため、適切にクライアントマシンを保護する必要があります。

Conclusion

フェデレーションに関する将来の発表をお待ちください。他のフェデレーションプロバイダもサポート予定があります。情報アップデート時にお知らせします。

0 件のコメント:

コメントを投稿