スマートカードのidpUser式
スマートカードIDプロバイダーを作成するときは、idpuserの属性の1つを[IdP Username(IdPユーザー名)]フィールドの値として指定する必要があります。この値は、関連付けられたユーザーを検索するために使用されます。[IdP Username(IdPユーザー名)]フィールドには、Okta Expression Language式を含めることもできます。[IdP Username(IdPユーザー名)]に式が含まれている場合、式の評価結果がユーザーの照合に使用されます。このページでは、スマートカードIDプロバイダーで式を使用する前に式を作成してテストするプロセスについて説明します。
トピック
はじめに
- 「スマートカードIDプロバイダーを追加」の説明に従って、スマートカードIDプロバイダーが事前に作成されていることを確認します。
テスト属性を作成する
テスト属性は、式の結果を作成して検証するために使用されます。テスト属性を使用すると、実際のデータが上書きされるのを防ぐことができます。
テスト属性を追加するには、次の手順を実行します。
- Okta orgに管理者としてサインインします。
- を選択します。
- [Profile Editor(プロファイルエディタ)]ペインで[ユーザー]タブを選択し、次に[Identity Providers(IDプロバイダー)]を選択します。
- 以前に作成したスマートカードIDプロバイダーの名前をクリックして開きます。
Profile Editorで、以前に作成したIDプロバイダーのプロファイルページを開きます。 - [Attributes(属性)]セクションで、[Add Attribute(属性を追加)]をクリックします。
- [属性を追加]ダイアログで、次のように入力します。
フィールド 値 [Display name(表示名)] Test Attributeなどの適切な名前。 [Variable name(変数名)] testAttributeなどの適切な変数名。 - 属性タイプがstringであることを確認し、[Save(保存)]をクリックします。
式を設定する
以前に追加した属性を使用して、次の式を作成します。
式は次の条件を満たす必要があります。
- 文字列を返す。
- 単一の値に対して評価を行う。
- IDプロバイダーの[Match against(照合対象)]フィールドに対して照合を行う。
- [Mappings(マッピング)]を選択するか、
- を選択します。
- [Identity Providers(IDプロバイダー)]を選択します。
- 以前に作成したIDプロバイダーを選択します。
- [Mapping(マッピング)]をクリックします。
- 属性値の値を表す式を入力します。
たとえば、メールアドレス
String.substringBefore(appuser.subjectAltNameEmail, "@"))で、アットマーク(@)の前のコンテンツを返す場合があります。式の詳細と例については、「式」をご覧ください。テスト例ではidpuserの代わりにappuserを使用する必要があります。idpuserは、テスト中は使用できません。
appuserはテストにのみ使用し、現在サポートされているidpuserのフィールドをすべて含みます。
IDプロバイダーでこの式を使用する場合は、appuserのすべてのインスタンスを常にidpuserに置き換えてください。 - [Save Mappings(マッピングを保存)]をクリックします。必要に応じて、式のエラーを修正します。
- 前のセクションで、適切なユーザーを選択して[Enter]をクリックします。
- 結果を調べて、式が期待値を返したことを確認します。必要に応じて繰り返します。
- 完了したら[Exit Preview(プレビューを終了)]をクリックします。
- 完成した式をコピーして、IDプロバイダーで使用します。
- [Cancel(キャンセル)]をクリックします。
- これで、テスト属性を削除できるようになりました。
式をidpUserとして指定する
- ナビゲーションペインで、 を選択します。
- PIVスマートカードIDプロバイダーを含む行で、 をクリックします。
- [IdP Username(IdPユーザー名)]フィールドで現在のコンテンツを選択し、置き換える値を貼り付けます。
- [Update Identity Provider(IDプロバイダーを更新)]をクリックします。