OneLoginを利用してMicrosoft AD環境のWorkSpacesでMFAをしてみた

Microsoft ADでActive Directoryを立ち上げた環境で「OneLogin Protect」を利用したMFAログインを設定してみました

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Bonjour、AWS事業本部のニシヤマです。

前回、Directory ServiceのMicrosoft ADを利用してAWS上にActive Directoryを立てましたが、今回はMicrosoft ADを利用した環境でWorkSpacesにMFAログインを設定してみたのでご紹介します。

はじめに

今回は以下の構成となります。環境は構築された前提で進めますがMicrosoft ADの起動とWindows Serverのドメイン参加については、前回のブログも参照してみてください。

長いので先に全体の流れを共有します。

  1. Active DirectoryとOneLoginのユーザ情報の同期
  2. OneLoginで多要素認証の有効化
  3. OneLoginでセキュリティポリシーを設定する
  4. OneLoginでRADIUSサーバを設定する
  5. AD ConnectorでMFA認証設定を行う
  6. ログインユーザでMFAの設定
  7. MFAを利用してWorkSpacesへのログイン

やってみる

それでは、始めて行きます。

Active DirectoryとOneLoginのユーザ情報の同期

Active DirectoryとOneLoginのユーザ情報の同期の為に、ドメイン参加しているマシンでOneLogin's Active Directory Connector(以下、OLADC)をインストールする必要がありますので、以下の手順を参考にしながら対応します。

Install & Configure Active Directory Connector 5

OLADCをインストールするマシンはドメインに参加している必要があるので、前回のブログを参照して準備していただければと思います。 また、OLADCには以下のシステム要件がありますので満たす様にしてください。

  • Windows Server 2008 R2 SP 1 and above, 2012, 2016, 2019
    • Note. Active Directory Connectors can be installed on Windows Server 2012 R2+, they also support domain controllers running on earlier versions of Windows Server. Don't attempt installation in FIPS compliance mode; the installation will succeed, but startup aborts with an error in ADC.LOG
  • .NET Framework 4.5.1 and up
  • Processor: Pentium 4 or better
  • RAM: 512MB
  • Disk space: 120MB, configurable to less than 50
  • Outbound TCP Port 443 from the server running the connector to the network ranges listed in OneLogin Domains and IP addresses.

それでは最初にOneloginの管理画面でDirectoriesを選択します。

次に右上のNew Directoryをクリックします。

Select a Directory Typeの画面ではActive DirectoryのChooseをクリックします

Name Directoryに任意の名前を入力し、Download and Run the Applicationの下のリンクからインストーラーをダウンロードします。またEnter this token during installationの項目にはインストール中に利用するトークンが表示されいているので控えておいてください。

インストーラーをダウンロードしたら、ドメインに参加済みのOLADCインストール先のWindowsマシンに転送して実行します。

OLADCインストール先のマシンでセットアップウィザードが起動したらNextをクリックします。

ライセンスを確認し問題なければ同意のチェックを入れNextをクリックします。

次に先ほど控えておいたトークンを入力してNextをクリックします。

次にService Log On Credentialsになりますが、ここで注意ですがMicrosoft ADを利用している場合、ここでは一番下のRun service as LocalSystemを選択してください。

次はシングルサインオン用のポートの画面ですが、デフォルトのままでNextをクリックします。

次のOneLoginデータベースのサイトの地域の選択画面はUSを選択してNextをクリックします。

確認画面のInstallをクリックします。

少し待つとインストールが完了するのでFinishをクリックしてウィザードを終了させます。

OneloginのWeb画面を見ると自動的に画面が変わっており、ここで同期したいOUを選択してFinishをクリックして完了させます。

Directoriesの一覧画面で見るとConnectedに変わっていました。

少し待つとOneloginのUser画面にもActive Directory(Microsoft AD)上のユーザが同期されました。

OneLoginで多要素認証の有効化

次に以下を参照しながらOneLoginで多要素認証を有効化して利用できる様にします。

Add Multi-Factor Authentication

Oneloginの管理画面でAuthentication Factorsを選択します。

New Auth Factorをクリックします。

Select a Strong Authentication Factorの画面でOneLogin ProtectのChooseをクリックします。

User descriptionに任意の名前を入力しSaveをクリックします。

Authentication Factorsの画面に戻ると、OneLogin Protectが追加されていました!

OneLoginでセキュリティポリシーを設定する

次にOneLogin上でMFAを利用する様にポリシーを設定します。

Oneloginの管理画面でPoliciesを選択します。

New User Policyをクリックします。

ポリシー名に任意の名前を入力し、左メニューからMFAを選択しOne-time passwordsの項目で以下にチェックを入れます。

  • OTP Auth Required
  • Authenticator

次にページ下にあるEnforcement Settingsの項目でOTP required forの項目をAdministrator OnlyからAll Usersに変更し、ページ右上のSaveをクリックします。

次に作成したポリシーをユーザに適用します。

Oneloginの管理画面でUsersを選択し、左メニューのAuthenticationの画面で先ほどのMFAを有効にしたポリシーを設定し、Save Userをクリックします。

こちらの作業はグループを作成してユーザを追加し、ポリシーをグループに適用する方法でも同じことが出来ます。

OneLoginでRADIUSサーバを設定する

次に以下を参照しながらOneLoginでRADIUSサーバの設定をします。

Configure the RADIUS Server Interface

Oneloginの管理画面でRADIUSを選択します。

New Configurationをクリックします。

サーバ名に任意の名前を入力し、以下の項目を入力します。

  • Secret:AD Connectorと共有する文字列
  • IP Addresses:AD Connectorからアクセスする時のIPアドレス(今回はNATゲートウェイのElasticIP)

次にページ下にあるCredentialsの項目で以下の様に変更し、Save Userをクリックします。

  • User-Name:SAMAccountName(元はEmail)
  • User-Password:OTP(元はPassword)

AD ConnectorでMFA認証設定を行う

次はAWSのAD ConnectorでMFA認証の設定します。

マネジメントコンソールのWorkSpacesの画面のディレクトリ一覧で、対象のAD Connectorを選択し、アクションから詳細の更新をクリックします。

更新メニューのMFA 認証で以下の情報を入力し更新と終了をクリックします。

  • Multi-Factor Authentication の有効化:チェックを入れる
  • RADIUS サーバーの IP アドレス:52.34.255.20618.216.23.112
  • 共有シークレットコード:<OneLoginでRADIUSサーバで設定したもの>
  • 共有シークレットコードの確認:<上記を入力>
  • サーバータイムアウト(秒単位) :30
  • 最大再試行回数:4

RADIUSサーバーのIPアドレスに関してはこちらで確認してください。

設定したAD ConnectorのRADIUSステータスがCompletedになっていることを確認してください。

ログインユーザでMFAの設定

次はログインユーザでMFAの設定を行います。

スマートフォンなどで専用アプリの「OneLogin Protect」をインストールします。

次にWebブラウザでOneloginにアクセスしメールアドレス、パスワードを入力し次へ進むと二要素認証のセットアップ画面が表示されます。あとは、画面の指示に従い、スマートフォンのアプリでQRコードをスキャンすることでMFAの登録が完了です。

メールアドレスを入力。

次にパスワードを入力。

セットアップを始めるをクリック。

アプリをインストールしたら有効化するをクリック。

アプリでQRコードをスキャンしてMFAの登録。

MFAを利用してWorkSpacesへのログイン

次にWorkspacesクライアントで接続してみます。事前に起動しておいたWorkspacesの登録コードを入力すると、MFAコードの入力欄のついたログイン画面が表示されます。

ユーザ名とパスワードを入力し、専用アプリ「OneLogin Protect」のワンタイムパスワードを入力してサインインすると無事ログインできました!!(長かった)

おわりに

いかがでしたでしょうか。通常のWorkspacesではユーザ名とパスワードでのログインになりますが、Oneloginと連携することでMFAを利用してセキュリティを向上させることができました。Workspacesの利用はリモートワークの導入で今後も増える可能性が高いのでこの記事がお役に立てば幸いです。