本記事では、Okta Workforce Identity Cloud (以降、WIC) での多要素認証 (MFA) の設定について解説します。 多要素認証には欠かせない認証器 (Authenticator) であるOkta Verifyは多くの認証機能を持っているので、WICを触り始めた方にとっては、設定を理解するのが難しいと感じると思います。 そこで本記事では、主にOkta Verifyを使った多要素認証について言及していきます。 以降の解説は、以下のブログ記事の内容を実施済みの前提で進めていきます。 ・はじめてのOkta Workforce Identity Cloud (WIC) トライアル環境の構築 ・はじめてのOkta Workforce Identity Cloud (WIC) [第1回] ユーザーと認証器の関係を紐解く そもそも、多要素認証ってなんだ? 多要素認証は文字のごとく「2つ以上の要素で認証」することです。 「2要素認証って、“パスワード” と ”子供の頃なりたかった職業は?” みたいな質問の、2つの値で認証することでしょ?」と思われてる方も多いと思いますが、実はこれは、2要素認証ではないのです。 なぜなら、どちらも「知識」という要素だからです。 「多要素」とは、「知識」「所持」「生体」の3つの要素のうち、異なる2つ以上の組み合わせで認証することを言います。 異なる2つ以上の組み合わせで認証することを指す [参考資料]NIST Update: Multi-Factor Authentication and SP 800-63 Digital Identity Guidelines これを踏まえて、以降、Oktaの多要素認証設定を解説していきます。 →MFAとは? Authentication Policiesの2要素認証の設定を紐解く WICトライアル環境を作った際に、RSA SAML Test Service Provider とSAML連携するように設定しました。 第1回目のブログ記事でも少し解説しましたが、そのアプリへアクセスする際は、すでに2要素認証になっています。 「スマートフォン上のOkta Verifyのワンタイムパスワード(手入力) or プッシュ」=「所持」と、「パスワード」=「知識」の2要素ですね。 ===== << 注 >> ===== もし、既にスマートフォンのOkta Verifyで「Face ID=顔認証」を有効にしている場合は、「スマートフォン上のOkta Verifyのワンタイムパスワード(手入力) or プッシュ」=「所持」と、「パスワード」=「知識」の2要素認証になっていないと思います。 Face IDが有効だと、1回のアクションで2要素認証が実現できる状況になっているからです。 この機能は便利なので、通常は使って頂いても全く問題ありませんが、ここでは一旦、以下の方法でFace IDをOFFにしてください(あくまで、以降の解説のご理解を深めるため、という理由だけです)。 そして、もう一度RSA SAML Test Service Provider にログインして、「スマートフォン上のOkta Verifyのワンタイムパスワード(手入力) or プッシュ」=「所持」と、「パスワード」=「知識」の2要素認証になったことを確認しておいてください。 ================ では実際の設定を見てみましょう。 WIC管理画面の「Security」→「Authentication Policies」で表示された画面を見ると、「Any two factors」というポリシーにRSA SAML Test Service Provider アプリが割り当てられていることがわかります。 「Default」との記載がある通り、新しく追加したアプリは基本的にはこの「Any two factors」に紐付けられます。もちろん変更もできます。 上記画面の「Any two factors」をクリックして設定を確認してみましょう。 ① 「Catch-all Rule」というルールが設定されています。 このルールは必ず存在し、必ず最後に適用されるルールです。 一部の設定変更はできますが、削除はできません。 「Add Rule」ボタンをクリックして、これ以外の新しいルールを追加することもできます。 (今は追加はしないで、このCatch-all Ruleを使います。) ②「IF」は、この認証ルールの条件です。「Any request」となっているので、「全ての認証要求に適用されるルール」ということです。 ③「THEN」は、②の「IF」条件に一致したら、ここに指定した認証を行う、という意味です。 「Access: Allowed with any 2 factor types」とありますので、「2要素の認証を行う」という設定になっていることが分かります。 WICを触り始めた初期段階では、この「THEN」に記載されている内容の理解に苦しむと思いますので、解説しておきます。 理解に苦しむ原因は「Okta Verifyアプリが多機能だから」というのが根本にあります。 まずは比較的分かりやすい、「Password」と「Okta Verify」の組み合わせの方から解説していきます。 ①には「Knowledge / Biometric factor types」との記載があります。これが1要素目であり、まずは「知識」か「生体」のどちらかの要素で認証しましょう、ということです。 「Password」は「知識」ですので、1要素目として「知識」を使うことになります。 ②には「Additional factor types」とあります。1要素目で「知識」は使いましたから、2要素目に「知識」は使えませんので、「所持」か「生体」で認証する必要があります。 「Okta Verify」か「Phone」が選択肢として存在していますが、WICトライアル環境では「Phone」は残念ながら使えないので、自ずと「Okta Verify」が2要素目となります。 この2要素目のOkta.