OCIとOkta間のアイデンティティ・ライフサイクル管理
このチュートリアルでは、Oktaが認可アイデンティティ・ストアとして機能する、OktaとOCI IAM間のユーザー・ライフサイクル管理を構成します。
この30分のチュートリアルでは、OktaからOCI IAMにユーザーおよびグループをプロビジョニングする方法を示します。
- OCI IAMで機密アプリケーションを作成すること。
- アイデンティティ・ドメインのURLを取得し、シークレット・トークンを生成します。
- Oktaでアプリケーションを作成します。
- Oktaの設定を更新します。
- プロビジョニングがOCI IAMとOktaの間で機能することをテストします。
- さらに、方法に関する指示
- ユーザーのフェデレーテッド・ステータスを設定して、外部アイデンティティ・プロバイダによって認証されるようにします。
- アカウントが作成または更新されたときに、ユーザーが通知電子メールを受信することを停止します。
このチュートリアルは、アイデンティティ・ドメインのIAMに固有です。
このチュートリアル・セットを実行するには、次のものが必要です:
-
有料Oracle Cloud Infrastructure (OCI)アカウントまたはOCIトライアル・アカウント。Oracle Cloud Infrastructure Free Tierを参照してください。
- OCI IAMアイデンティティ・ドメインのアイデンティティ・ドメイン管理者ロール。管理者ロールの理解を参照してください。
- プロビジョニングを構成するための管理者権限を持つOktaアカウント。
チュートリアルのステップから、必要な追加情報を収集します。
- OCI IAMドメインURL。
- OCI IAMクライアントIDとクライアント・シークレット。
OCI IAMで機密ファイルを作成し、アクティブ化します。
-
サポートされているブラウザを開き、コンソールURLを入力します:
- 「クラウド・アカウント名」(テナンシ名とも呼ばれる)を入力し、「次」を選択します。
- ユーザー名とパスワードを使用してサインインします。
- ナビゲーション・メニューを開き、「アイデンティティおよびセキュリティ」を選択します。「アイデンティティ」で、「ドメイン」を選択します。
- Oktaプロビジョニングを構成するアイデンティティ・ドメインを選択し、「アプリケーション」を選択します。
- 「アプリケーションの追加」を選択し、「機密アプリケーション」を選択して「ワークフローの起動」を選択します。
- 機密アプリケーションの名前を入力します(例: OktaClient)。「次」を選択します。
- 「クライアント構成」の下で、「このアプリケーションをクライアントとして今すぐの構成します」を選択します。
- 「認可」で、「クライアント資格証明」を選択します。
- 下部までスクロールし、「アプリケーション・ロールの追加」を選択します。
- 「アプリケーション・ロール」で「ロールの追加」を選択し、「アプリケーション・ロールの追加」ページで「ユーザー管理者」を選択して「追加」を選択します。
- 「次へ」を選択し、「終了」を選択します。
- アプリケーションの詳細ページで、「アクティブ化」を選択し、新しいアプリケーションをアクティブ化することを確認します。
You need two pieces of information to use as part of the connection settings for the Okta app you create later.
- ブレッドクラムでアイデンティティ・ドメイン名を選択して、アイデンティティ・ドメインの概要に戻ります。ドメイン情報の「ドメインURL」の横にある「コピー」を選択し、URLを編集できるアプリケーションに保存します。
OCI IAM GUIDはドメインURLの一部です:
https://<IdentityDomainID>.identity.oraclecloud.com:443/fed/v1/idp/sso例:
idcs-9ca4f92e3fba2a4f95a4c9772ff3278 - OCI IAMの機密アプリケーションで、「リソース」の下のOAuth構成を選択します。
- 下にスクロールし、「一般情報」の下にクライアントIDとクライアント・シークレットを書き留めます。
- 下にスクロールし、「一般情報」の下の「クライアントID」および「クライアント・シークレット」を見つけます。
- クライアントIDをコピーして格納します
- 「シークレットの表示」を選択し、シークレットをコピーして格納します。シークレス・トークンは、
<clientID>:<clientsecret>のbase64エンコーディング、base64(<clientID>:<clientsecret>)これらの例は、WindowsおよびMacOSでシークレット・トークンを生成する方法を示しています。
Windows環境で、CMDを開き、このpowershellコマンドを使用してbase64エンコーディング
[Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes('client_id:secret'))"を生成しますMacOSでは、次を使用しますecho -n <clientID>:<clientsecret> | base64シークレット・トークンが返されます。例:echo -n 392357752347523923457437:3454-9853-7843-3554 | base64 Nk0NzUyMzcyMzQ1NzMTc0NzUyMzMtNTQzNC05ODc4LTUzNQ==シークレット・トークンの値を書き留めます。
Oktaでアプリケーションを作成します。
- ブラウザで、次のURLを使用してOktaにサインインします。
https://<Okta-org>-admin.okta.comここで、
<okta-org>は、Oktaを使用する組織の接頭辞です。 - 左側のメニューで、「アプリケーション」を選択します。
OCIおよびOktaを使用したSSOを実行したときに作成したアプリケーションがすでにある場合は、それを使用できます。Select to open it and edit it, and go to 5. Change Okta Settings.
- 「アプリケーション・カタログの参照」を選択し、
Oracle Cloudを検索します。使用可能なオプションから「Oracle Cloud Infrastructure IAM」を選択します。 - 「統合の追加」を選択します。
- 「一般設定」で、アプリケーションの名前(
OCI IAMなど)を入力し、「完了」を選択します。
前のステップのドメインURLおよびシークレット・トークンを使用して、OktaアプリケーションをOCI IAM機密アプリケーションに接続します。
- 新しく作成したアプリケーション・ページで、「Sign On」タブを選択します。
- 「設定」で、「編集」を選択します。
- 「Advanced Sign-on Settings」まで下にスクロールします。
- Oracle Cloud Infrastructure IAM GUIDにドメインURLを入力します。
- 「保存」を選択します。
- ページ上部の「プロビジョニング」タブを選択します。
- 「API統合の構成」を選択します。
- 「API統合の有効化」を選択します。
- APIトークンで前にコピーしたシークレット・トークン値を入力します。
-
「API資格証明のテスト」を選択します。
エラー・メッセージが表示された場合は、入力した値を確認して再試行してください。
Oracle Cloud Infrastructure IAM was verified successfully!というメッセージが表示されたら、OktaはOCI IAM SCIMエンドポイントに正常に接続しました。 -
「保存」を選択します。
「アプリケーションへのプロビジョニング」ページが開きます。このページでは、ユーザーの作成、ユーザー属性の更新、OCI IAMとOkta間の属性のマップを行うことができます。
Oktaのユーザーおよびグループのプロビジョニングをテストするには:
- 新しく作成したアプリケーションで、「割当」タブを選択します。
- 「割当て」を選択し、「個人に割当て」を選択します。
- OktaからOCI IAMにプロビジョニングするユーザーを検索します。
ユーザーの横にある「割当て」を選択します。
- 「保存」、「戻る」の順に選択します。
- OktaグループをOCI IAMにプロビジョニングします。「割当て」タブで、「割当て」を選択し、「グループへの割当て」を選択します。
- OCI IAMにプロビジョニングするグループを検索します。グループ名の横にある「割当て」を選択します。
- 「Done」を選択します。
- OCIにサインインします。
-
サポートされているブラウザを開き、OCIコンソールURLを入力します:
- 「クラウド・アカウント名」(テナンシ名とも呼ばれる)を入力し、「次」を選択します。
- Oktaが構成されているアイデンティティ・ドメインを選択します。
-
- 「ユーザー」を選択します。
- OktaでOCI IAMアプリケーションに割り当てられていたユーザーが、OCI IAMに存在するようになりました。
- 「グループ」を選択します。
- OktaでOCI IAMアプリケーションに割り当てられたグループが、OCI IAMに存在するようになりました。
- ユーザーのフェデレーテッド・ステータスを設定して、外部アイデンティティ・プロバイダによって認証されるようにできます。
- アカウントの作成または更新時にユーザーに送信される通知電子メールを無効にできます。
フェデレーテッド・ユーザーには、OCIに直接サインインするための資格証明がありません。かわりに、外部アイデンティティ・プロバイダによって認証されます。フェデレーテッド・アカウントを使用してOCIにサインインする場合は、それらのユーザーのフェデレーテッド属性をtrueに設定します。
ユーザーのフェデレーテッド・ステータスを設定するには:
- ブラウザで、次のURLを使用してOktaにサインインします。
https://<Okta-org>-admin.okta.comここで、
<okta-org>は、Oktaを使用する組織の接頭辞です。 - 左側のメニューで、「アプリケーション」を選択します。
- 前に作成したアプリケーション
OCI IAMを選択します。 - 「Attribute Mappings(属性マッピング)」セクションまで下にスクロールします。
- 「プロファイル・エディタに移動」を選択します。
- 「属性」で、「属性の追加」を選択します。
- 「属性の追加」ページで、次の手順を実行します。
- 「データ型」で、
Booleanを選択します。 - 「表示名」には、
isFederatedUserと入力します。 - 「変数名」に、
isFederatedUserと入力します。ノート
外部名は、変数名の値によって自動的に移入されます。 - 「外部ネームスペース」に、
urn:ietf:params:scim:schemas:oracle:idcs:extension:user:Userと入力します。 - 「スコープ」で、
User personalを確認します。
- 「データ型」で、
- Oktaの「アプリケーション」ページに戻り、
OCI IAMアプリケーションを選択します。 - 「プロビジョニング」を選択します。
- 「属性マッピング」までスクロール・ダウンし、「マップされていない属性の表示」を選択します。
isFederatedUser属性を見つけて、その横にある編集ボタンを選択します。- 属性ページでは、次の操作を行います。
- 「属性値」で、
Expressionを選択します。 - 下のボックスに、
trueと入力します。 - 「適用対象」で、「作成および更新」を選択します。
- 「属性値」で、
- 「保存」を選択します。
現在は、ユーザーがOktaからOCIにプロビジョニングされると、フェデレーテッド・ステータスがtrueに設定されます。これは、OCIのユーザー・プロファイル・ページで確認できます。
- OCIコンソールで、使用しているアイデンティティ・ドメインに移動し、「ユーザー」を選択して、ユーザー情報を表示するユーザーを選択します。
-
フェデレーテッドは、
Yesとして表示されます。
「バイパス通知」フラグは、OCIでのユーザー・アカウントの作成または更新後に、電子メール通知を送信するかどうかを制御しますユーザーに対してアカウントが作成されたことをユーザーに通知しない場合は、バイパス通知フラグをtrueに設定します。
バイパス通知フラグを設定するには:
- ブラウザで、次のURLを使用してOktaにサインインします。
https://<Okta-org>-admin.okta.comここで、
<okta-org>は、Oktaを使用する組織の接頭辞です。 - 左側のメニューで、「アプリケーション」を選択します。
- 前に作成したアプリケーション
OCI IAMを選択します。 - 「Attribute Mappings(属性マッピング)」セクションまで下にスクロールします。
- 「属性」で、「属性の追加」を選択します。
- 「属性の追加」ページで、次の手順を実行します。
- 「データ型」で、
Booleanを選択します。 - 「表示名」には、
bypassNotificationと入力します。 - 「変数名」に、
bypassNotificationと入力します。ノート
外部名は、変数名の値によって自動的に移入されます。 - 「外部ネームスペース」に、
urn:ietf:params:scim:schemas:oracle:idcs:extension:user:Userと入力します。 - 「スコープ」で、
User personalを確認します。
- 「データ型」で、
- Oktaの「アプリケーション」ページに戻り、
OCI IAMアプリケーションを選択します。 - 「プロビジョニング」を選択します。
- 「属性マッピング」までスクロール・ダウンし、「マップされていない属性の表示」を選択します。
bypassNotification属性を見つけて、その横にある編集ボタンを選択します。- 属性ページでは、次の操作を行います。
- 「属性値」で、
Expressionを選択します。 - 下のボックスに、
trueと入力します。 - 「適用対象」で、「作成および更新」を選択します。
- 「属性値」で、
- 「保存」を選択します。
完了しました。OktaとOCIの間でユーザー・ライフサイクル管理を正常に設定しました。
Oracle製品を使用した開発の詳細を確認するには、次のサイトを参照してください:












