コンテンツまでスキップ

Active DirectoryごしのAmazon WorkSpacesにOkta MFAを追加してみた

OktaをAmazon WorkSpacesのMFAとして利用したいユースケースについて記載しています。

こんにちは!ネクストモード株式会社 のSaaS部hagiです。

今回は、実案件に少し絡んでいた都合で、Okta MFAとAmazonWorkspaceを統合する構成において、その実際の立て付けを試してみました。
OktaMFAとAmazonWorkSpacesの統合

分かりにくいので、私の苦手な図表でご説明しますね。

integrating-okta-mfa-with-amazon-workspaces-001

図の通り、EC2上にActive Directoryが鎮座しており、ADコネクターごしにAmazon WorkSpaces環境が立てつけられているという環境を想定しています。
この環境に、Oktaとの橋渡しのため、各種エージェントをバンドルさせて、Oktaとのディレクトリ同期を構成した上で、Active Directory由来のユーザーでもOktaのMFAを使えるようにしましょうというのが今回のゴールです。上記AWSの資料ではEC2を別立てしていますが、今回は横着してActive Directory内に同梱しました。
まだ難しいですか?


要約すると、Amazon WorksSacesのログイン画面にMFAコードの欄が増えるということです。 ここで入力するコードは、Okta Verifyに表示される6桁の数字になります。

Amazon Workspaces

integrating-okta-mfa-with-amazon-workspaces-002

Okta Verify

Okta Verifyの画面

ユーザー名はその日食べたものを思いつきで付けることが多いです。

 

ちなみに


結果を先にお伝えします。チョー簡単にセットアップできました。

これほど簡単とは思いませんでしたので、やる前に十分な休息を取って、相棒に声をかけ、Slackハドルでストレス緩和しながら慎重に進めていったのですが本当にびっくりするほどあっさりセットアップできてしまったのでこの記事はエンタメの域を出られなくなってしまいました。

どれだけ簡単だったのかお伝えしたいので、先に今回のレシピを箇条書きしておきます。

【AWS側】

  • FW穴あけ
  • EC2にOkta RADIUS Server Agentsを入れる
  • EC2にOkta Active Directory agentを入れる

【Okta側】

  • MFAの設定
  • Active DirectoryのユーザーをOkta側でアクティベート

【Amazon WorkSpaces側】

  • MFAの有効化
  • Amazon WorkSpacesのリソースを作成してログイン

はじめに


まず事前に用意されたAWS環境をマネコンで確認してみましょう。
(環境手配にご協力いただいた関係各位ありがとうございます!)

【Active Directoryが乗っているEC2】

integrating-okta-mfa-with-amazon-workspaces-004

integrating-okta-mfa-with-amazon-workspaces-005

【AD Connectorが乗っているDirectory Service】

integrating-okta-mfa-with-amazon-workspaces-006

【ただのWorkSpaces】

integrating-okta-mfa-with-amazon-workspaces-007

もう、あえて細かいところは説明しないです。実機が正です!
また、Okta側は特に事前に何かしている必要はありません。Admin権限だけ持っていればOKです。

 

さて、


セットアップを開始しましょう。 まずはAWS側でしたね。

Active Directoryに対してSGの穴あけを行っていきます。 RADIUSで使用するのはTCP/UDP 1812なので、こちらのインバウンドを開けていきます。 開けるとAmazon WorkSpacesがココをめがけてRADIUSを聞けるようになります。

integrating-okta-mfa-with-amazon-workspaces-008

 

忘れちゃいけないOS側もしっかり開けていきましょう。
(実際よく忘れがちなのはOSよりSGなのはあるあるですが、ダサいので表立っては触れません)

integrating-okta-mfa-with-amazon-workspaces-009

 

Okta提供のエージェントをEC2に入れていく


次にエージェントです。ソースはOktaの管理画面です。
ログインしてSettings → Downloadsへ。

ワード検索で"radius"とすればOkta RADIUS Server Agent (EXE)が見つかるはずです。
ダウンロードしましょう。

integrating-okta-mfa-with-amazon-workspaces-010

間髪入れずに今度はDirectory → Directory Integrationsへ。
Add Directory → Add Active Directory

integrating-okta-mfa-with-amazon-workspaces-011

説明文を華麗に読み飛ばしてSet Up Active Directoryをクリック

integrating-okta-mfa-with-amazon-workspaces-012

 

Download Agentをクリックしてエージェントをゲットしたのち、下部にWaiting for the agent installer to update this page...が出ているのをちょっと脇に置きつつ、横でActive Directoryの入っているEC2にリモデしましょう。

integrating-okta-mfa-with-amazon-workspaces-013

コピペで先程ゲットしたexe2つをEC2のデスクトップ上へ転送し、まずはRADIUSからセットアップします。

integrating-okta-mfa-with-amazon-workspaces-014

特に難しいことは考えず、次へ次へとやっていただければ大丈夫です。
ここにはOktaのドメイン名を入れます。

integrating-okta-mfa-with-amazon-workspaces-015

すると、突然見慣れた自アカウントのログイン画面がWindowsデスクトップ上に出現しますので、管理者アカウントでログインします。

integrating-okta-mfa-with-amazon-workspaces-016

最後に、押したいほうのボタンをクリックしてRADIUSエージェントのセットアップは完了です。

integrating-okta-mfa-with-amazon-workspaces-017

integrating-okta-mfa-with-amazon-workspaces-018

 

EC2、50%完了


はい簡単!次はAD Agentですね。

integrating-okta-mfa-with-amazon-workspaces-019

こちらもサクッと入れたあと、下記の画面でAD側のドメイン名を入れます。

integrating-okta-mfa-with-amazon-workspaces-020

私はおすすめに弱いのでrecommended選びます。

integrating-okta-mfa-with-amazon-workspaces-021

このあとまたドメインを入力する画面になり、管理者アカウントでログイン後、Allow Accessする手順が待っています。

integrating-okta-mfa-with-amazon-workspaces-022

 

そしてEC2のターン終了。

integrating-okta-mfa-with-amazon-workspaces-023

 

Okta先生の出番です


 

画面をOktaに戻したころには、下記のおめでたい画面が出ているはずです。

integrating-okta-mfa-with-amazon-workspaces-024

ちゃんとディレクトリが読み込まれているようですね。次へ

integrating-okta-mfa-with-amazon-workspaces-025

Build User Profile画面でattibuteの整理整頓が行えます。
(一旦そのままでも大丈夫だろうという気立てがあると助かります。)

integrating-okta-mfa-with-amazon-workspaces-026

Doneボタン押してほしそうですね。押してあげましょう。

integrating-okta-mfa-with-amazon-workspaces-027

 

さて、Active Directoryの連携が完了しました。 早速ユーザーを読み込んでみましょう。 Import画面でImport Nowしてみてください。

integrating-okta-mfa-with-amazon-workspaces-028

 

Active Directory側のユーザーが読み込まれました。

integrating-okta-mfa-with-amazon-workspaces-029

 

Confirm Assignmentsして、下記の、ちょっとおフザけ感のあるユーザー名をOktaに取り込んでみましょう。
#お昼何食べたかの脈絡でつけただけで他意はありません。

integrating-okta-mfa-with-amazon-workspaces-030

 この後Oktaディレクトリを確認すると…
panmcdがOktaのディレクトリに追加されていますね!
 
integrating-okta-mfa-with-amazon-workspaces-031
 

 

Okta MFAの設定


Security → AuthenticatorsからOkta Verifyを有効化しつつ、Enrollmentで対象ユーザーのグループにOkta Verifyが効くように設定します。 もう、Oktaユーザーなら、分かりますよね!?いちいち説明しないですよココでは。

スクリーンショット 2023-02-17 14.24.36

 

Applicationsの登録


こちらもいわずもがな。
Brouse App CatalogからAmazon WorkSpacesを探してください。
登録したら、先程のPAN MCDさんをアプリケーションにアサインします。

integrating-okta-mfa-with-amazon-workspaces-033

パラメタとして、ポート1812を追加してあげるのと、この後Amazon Workspace側にも設定する共有シークレット(任意文字列)を設定します。
おもしろパラメタを設定する絶好のチャンスですね!

integrating-okta-mfa-with-amazon-workspaces-034

 

Oktaユーザーのアクティベート


Active DirectoryからOktaに複製されたユーザーは、Oktaとして初期アクティベートが必要になります。 Oktaログイン画面から初期パスワードでセットアップするか、招待メールを踏んでアクティベートしてください。

integrating-okta-mfa-with-amazon-workspaces-035

 

Amazon WorkSpacesのMFAを有効化


今度はAmazon WorkSpaces側の設定に参ります。 WorkSpacesのディレクトリから該当するディレクトリを選択して詳細の更新へ。

integrating-okta-mfa-with-amazon-workspaces-036

MFA 認証のセクションから、EC2のアドレス等を入力してパラメタを更新します。 共有シークレットコードは、Oktaに設定したものと同じキーワードを設定します。

integrating-okta-mfa-with-amazon-workspaces-037

 

RADIUSステータスが美しくなったら完了です。

integrating-okta-mfa-with-amazon-workspaces-038

 

ゴール


いよいよWorkSpacesの出番です。 ユーザー情報を入力して、先程登録したOkta VerifyからAmazon WorkSpaceへのログインを施行してみましょう。 入れない?いや、PAN MCDさんのWorkSpaceリソース作ってなくないですか?

integrating-okta-mfa-with-amazon-workspaces-039

 

まとめ


あ!この記事がエンタメの域を出ないことを忘れていたなんていう方がいたら、大変ですね。
難しいことなんて、ただの一つもないのです!
もしまだ、難しく感じるようであれば、それは私の書く文章が読みにくいだけです。