Azure Active Directory向けのOkta MFAを使用する
Okta多要素認証(MFA)を使用して、WS-Federation Office 365アプリ向けのAzure Active Directory(AD)MFAの要件を満たすことができます。
次の場合はOkta MFAを使用します。
- Oktaと連携認証されたドメインのAzure AD条件付きアクセスで要求されるMFA要件をOktaで処理する。
- OktaとMicrosoft両方のMFAに単一ソリューションを使用できるように、エンドユーザーをWindows Hello for Businessに登録する。
既知の問題
ユーザーが無限サインインループに陥る場合がある
認証ポリシーが、Azure ADポリシーよりも弱い場合、エンドユーザーは無限サインインループに陥ることがあります。これは、次のシナリオで発生する可能性があります。
-
認証ポリシーがMFAを必須としていない
Oktaでは、アプリにアクセスする際にMFAは求められませんが、Azure AD条件付きアクセスではMFAは必須であり、Oktaが入力済みMFAクレームを渡すことを前提としています。orgレベルで構成されている場合にもOktaによってMFAを求められることがありますが、このMFAクレームはAzure ADに渡されません。
-
アプリレベルのサインオンポリシーでは、ユーザーが「ゾーン内」のネットワークからサインインする場合はMFAは必要ありませんが、ユーザーが「ゾーンにない」ネットワークからサインインする場合はMFAが必要です。
ユーザーがゾーン内のネットワークからサインインしている場合、MFAは求められません。ただし、Azure AD条件付きアクセスにはMFAが必要であり、入力されたMFAクレームがOktaによって渡されることが期待されます。

orgレベルのMFAの一時的なサポート
次の場合、この手順によってorgレベルのMFAを一時的に使用できます。
- orgをOkta Classic EngineからOkta Identity Engineに移行していて、かつ
- orgレベルのサインオンポリシーがMFAを必須としてない。
この手順でMFAの使用が強制されるように、Office 365の認証ポリシーをセットアップする必要があります。
開始する前に
-
OktaでMFAを構成する:「認証ポリシー」の説明に従って、WS-Federation Office 365アプリインスタンス向けの認証ポリシーを構成します。
-
Azure ADでMFAを構成する:Microsoftドキュメントの説明に従って、Azure ADインスタンスでMFAを構成します。
この手順を開始する
Okta MFAのサポートを有効にするには、Office 365ドメインの連携認証設定を変更する必要があります。ドメインの連携認証を手動で行ったか自動で行ったかに応じて、次のいずれかの手順を選択します。
手動で連携認証されたドメインの場合
[Setup Instructions(設定手順)]の下で、更新済みの連携認証スクリプトを実行します。
-
管理コンソールで に移動します。
- WS-Federationが行われたOffice 365アプリを開きます。
-
[Sign On(サインオン)]タブ >[Sign On Methods(サインオン方法)]>[WS-Federation]> [View Setup Instructions(設定手順を表示)]をクリックします。
[How to Configure Office 365 WS-Federation(Office 365 WS-Federationの設定方法)]ページが開きます。
- このページで、[ドメインがすでにフェデレーションされている場合]セクションに移動します。
- このセクションからスクリプトをコピーして、Windows PowerShellで実行します。
- [Okta MFA from Azure AD(Azure ADからのOkta MFA)]オプションで[Enable for this application(このアプリケーションに対して有効にする)]を選択し、[Save(保存)]をクリックします。
- 次のPowerShellコマンドを実行して、SupportsMfa値がTrueであることを確認します。
Connect-MsolService
Get-MsolDomainFederationSettings -DomainName <yourDomainName>結果の例
コピーActiveLogOnUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/active
DefaultInteractiveAuthenticationMethod :
FederationBrandName : Okta
IssuerUri : issueruri
LogOffUri: https://example.okta.com/app/office365/issueruri/sso/wsfed/signout
MetadataExchangeUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/mex
NextSigningCertificate :
OpenIdConnectDiscoveryEndpoint :
PassiveLogOnUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/passive
SigningCertificate : <SigningCertificate>
SupportsMfa : True
手動で連携認証されたドメインの場合(Microsoft Graph)
MS Graphフェデレーション機能を有効化した場合は、PowerShellコマンドは異なります。
[Setup Instructions(設定手順)]の下で、更新済みの連携認証スクリプトを実行します。
-
管理コンソールで に移動します。
- WS-Federationが行われたOffice 365アプリを開きます。
-
[Sign On(サインオン)]タブ >[Sign On Methods(サインオン方法)]>[WS-Federation]>[View Setup Instructions(設定手順を表示)]をクリックします。
[How to Configure Office 365 WS-Federation(Office 365 WS-Federationの設定方法)]ページが開きます。
- このページで、[ドメインがすでにフェデレーションされている場合]セクションに移動します。
- このセクションからスクリプトをコピーして、Windows PowerShellで実行します。
- オプションの[Okta MFA from Azure AD(Azure ADからのOkta MFA)]で、[Enable for this application(このアプリケーションに対して有効にする)]がオンになっていることを確認し、[Save(保存)]をクリックします。
- 次のPowerShellkコマンドを実行してFederatedIdpMfaBehavior値がenforceMfaByFederatedIdpであることを確認します。
Connect-MgGraph -Scopes Directory.AccessAsUser.All
Get-MgDomainFederationConfiguration -DomainId <yourDomainName> | Select -Property FederatedIdpMfaBehavior
自動的に連携認証されたドメインの場合
この場合、設定を構成する必要はありません。
- Admin Consoleで、 に移動します。
- WS-Federationが行われたOffice 365アプリを開きます。
- [Sign On(サインオン)]タブ >[Edit(編集)]をクリックします。
- オプションの[Okta MFA from Azure AD(Azure ADからのOkta MFA)]で、[Enable for this application(このアプリケーションに対して有効にする)]がオンになっていることを確認し、[Save(保存)]をクリックします。
- 次のPowerShellコマンドを実行して、SupportsMfa値がTrueであることを確認します。
Connect-MsolService
Get-MsolDomainFederationSettings -DomainName <yourDomainName>結果の例
コピーActiveLogOnUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/active
DefaultInteractiveAuthenticationMethod :
FederationBrandName : Okta
IssuerUri : issueruri
LogOffUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/signout
MetadataExchangeUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/mex
NextSigningCertificate :
OpenIdConnectDiscoveryEndpoint :
PassiveLogOnUri : https://example.okta.com/app/office365/issueruri/sso/wsfed/passive
SigningCertificate : <SigningCertificate>
SupportsMfa : True
自動的に連携認証されたドメインの場合(Microsoft Graph)
Microsoft Graphフェデレーション機能を有効化した場合は、PowerShellコマンドは異なります。
この場合、設定を構成する必要はありません。
- Admin Consoleで、 に移動します。
- WS-Federationが行われたOffice 365アプリを開きます。
- [Sign On(サインオン)]タブと[Edit(編集)]を順にクリックします。
- [Okta MFA from Azure AD(Azure ADからのOkta MFA)]オプションで[Enable for this application(このアプリケーションに対して有効にする)]が選択されていることを確認し、[Save(保存)]をクリックします。
- 次のPowerShellコマンドを実行してFederatedIdpMfaBehavior値がenforceMfaByFederatedIdpであることを確認します。
Connect-MgGraph -Scopes Directory.AccessAsUser.All
Get-MsolDomainFederationSettings -DomainName <yourDomainName>
この機能を無効にする
この機能を無効にするには、次の手順を実行します。
-
管理コンソールで に移動します。
- WS-Federationが行われたOffice 365アプリを開きます。
- [Sign On(サインオン)]タブと[Edit(編集)]を順にクリックします。
- [Okta MFA from Azure AD(Azure ADからのOkta MFA)]オプションで[Enable for this application(このアプリケーションに対して有効にする)]の選択がクリアされていることを確認し、[Save(保存)]をクリックします。
この機能をオフにしたときは、この機能が有効な設定でOktaに自動的に連携認証されたすべてのドメインについて、SupportsMfaの設定を手動でfalseに設定する必要があります。
このPowerShellコマンドレットを使用してこの機能をオフにします。
Set-MsolDomainFederationSettings -DomainName <targetDomainName> -SupportsMfa $false
この機能を無効にする(MS Graph)
Microsoft Graphフェデレーション機能を有効化した場合は、PowerShellコマンドは異なります。
この機能を無効にするには、次の手順を実行します。
-
Admin Consoleで、 に移動します。
- WS-Federationが行われたOffice 365アプリを開きます。
- [Sign On(サインオン)]タブと[Edit(編集)]を順にクリックします。
- [Okta MFA from Azure AD(Azure ADからのOkta MFA)]オプションで[Enable for this application(このアプリケーションに対して有効にする)]の選択がクリアされていることを確認し、[Save(保存)]をクリックします。
この機能をオフにするときは、Oktaで自動的に連携認証が行われ、この機能が有効になっているすべてのドメインについてFederatedIdpMfaBehavior設定を手動でacceptIfMfaDoneByFederatedIdpに設定する必要があります。
この機能をオフにするには、次のPowerShellコマンドレットを使用します。
Update-MgDomainFederationConfiguration -DomainId <DomainName> -InternalDomainFederationId (Get-MgDomainFederationConfiguration -DomainId <DomainName> | Select -Property Id).id -FederatedIdpMfaBehavior acceptIfMfaDoneByFederatedIdp
機能の仕組み
Okta MFAがAzure AD MFAの要件を満たす
次の表で説明するように、OktaはMFAクレームを渡します。
OktaアプリレベルMFA | Azure AD MFA | 実行される操作の内容 |
---|---|---|
無効 | 有効 |
エンドユーザーが無限サインインループに陥ります。これを防ぐには、Okta MFAを構成してAzure AD MFAの要件を満たす必要があります。 |
有効 | 有効 | エンドユーザーはOktaでMFAプロンプトに応えて入力します。入力されたMFAクレームがOktaによってAzure ADに渡されます。Azure ADによってOktaからのMFAが受け入れられ、個別のMFAは求められません。ユーザーはOffice 365へのアクセスを許可されます。 |
OktaによってユーザーがWindows Helloに登録される
前提条件:デバイスがハイブリッドAzure ADまたはAzure ADに参加している必要があります。
組織がWindows Hello for Businessを必須としている場合、Windows Helloにまだ登録されていないエンドユーザーは、ステップアップ認証(SMSプッシュなど)の完了を求められます。Windows Helloへの登録に成功すると、エンドユーザーはサインオンできるようになります。次の表に示されているように、Oktaはエンドユーザーの登録を支援します。
OktaアプリレベルMFA | 実行される操作の内容 |
---|---|
無効 |
エンドユーザーが無限サインインループに陥ります。これを防ぐには、Okta MFAを構成してAzure AD MFAの要件を満たす必要があります。 |
有効 | エンドユーザーはOktaでステップアップMFAプロンプトに入力します。Windows Hello for Businessへの登録に成功すると、エンドユーザーはAzure AD MFAを満たすための要素としてWindows Hello for Businessを使用できます。 |
関連項目
Windows Hello for Business(Microsoftドキュメント)