少し前の記事ですが、MSから以下の発表がありましたね。
https://www.microsoft.com/en-us/security/blog/2023/02/15/microsoft-shifts-to-a-comprehensive-saas-security-solution/
この記事中に以下のような文言があったので、OktaとMicrosoft Defender for Cloud Apps(以下MDA)を接続してみることにしました。
Today, we are excited to announce that Defender for Cloud Apps is extending its SSPM capabilities to some of the most critical apps organizations use today, including Microsoft 365, Salesforce,3 ServiceNow,4 Okta,5 GitHub, and more.
Microsoft shifts to a comprehensive SaaS security solution
前提
今回は以下のライセンスを利用して設定しています。
- Okta OIE Preview環境
- Microsoft E5 Developer環境(MDA単体ライセンスでも可)
設定手順
Okta側でAPIトークンを発行する
MDAとの接続はAPI経由となるため、Okta側でまずAPIトークンを発行する必要があります。
※今回の環境は、OIEプレビュー環境です。
- Okta Admin Centerへアクセスします。
- 「Security」→【API】をクリックします。
- 「Tokens」タブを選択し、【Create token】をクリックします。
- わかりやすい名前を入力し、【Create token】をクリックします。
- Tokenが表示されるので、値を控えておきます。
※この画面でしか確認ができないので、必ず控えておいてください。
- Tokenが登録されたことを確認します。
これでOkta側の準備が整ったので、MDA側の設定をしていきます。
MDAとOktaを接続する
- Microsoft Defender管理コンソールへアクセスします。
- 「設定」→【クラウドアプリ】をクリックします。
- 「接続されているアプリ」カテゴリ内にある「アプリコネクタ」をクリックし、【アプリを接続】をクリックします。
- リストから「Okta」を選択します。
- インスタンス名を入力欄にわかりやすい名前を入力し、【次へ】をクリックします。
※ここでは、Okta-テスト環境としました。
- Oktaのドメインと、事前に発行したトークン情報を入力し、【送信】をクリックします。
しばらくすると、状態が「接続済み」となり、Oktaに登録されているアカウント数等が表示されてきます。
Okta設定の推奨事項を確認する
- MDA管理コンソールから、「セキュアスコア」→「おすすめの操作」タブを選択します。
- 右側にある【フィルタ】をクリックし、「製品」カテゴリにある「Okta」にチェックをつけ、【適用】をクリックします。
- おすすめの操作一覧が表示されるので、状態が「要対処」となっている項目を確認し、Okta側の設定を変更していきましょう。
- 各項目をクリックすると詳細が表示され、Okta側での操作方法などが表示されるので内容を確認しながらOktaの設定を行うことができます。
- 設定を変更して、しばらくすると状態が「完了」となりMicrosoftセキュアスコアのポイントがアップします。
Oktaのログを確認する
MDAとOktaを接続すると、OktaのログをMDAから確認することができるようになります。
- MDA管理コンソールへアクセスします。
- 「クラウドアプリ」→【アクティビティログ】をクリックします。
- 「アプリの選択」から「Okta」を選択します。
- Oktaのアクティビティログが表示されます。
指定したユーザーのログだけを確認したい場合には、ユーザー名からユーザーを選択することで絞り込むことができます。
項目をクリックすると生データのJSONを確認することができるので、GUIに表示されていない情報を確認した場合にはそちらを確認するといいと思います。
Okta側で以下のように出力されているログは、MDAだと以下のように表示されてきます。
MDAでのログ表示
Okta側のログで表示されているTargetsがMDA側ではパット見では確認することができませんが、生データのJSONを確認すると以下のように確認することができます。
まとめ
いかがでしたでしょうか。
ちょっとでも日本語化されたログで確認したいとかMicrosoft 365のログも一緒に確認したいなどの場合には接続してみるのもいいかもしれませんね。
ただリアルタイムでログを取り込んでいるわけではないので、ログが表示されるまでにはタイムラグがあるので、そこは注意が必要です。(感覚値ですが、大体5分程度のラグがあるようです)
また、MDAに接続したあとはMDA側でポリシーを作成することによって、Okta側でのログ検知してMDAからアラートを上げることができるようになります。
ログをまとめたいけど、SIEMまではまだやっていない場合等での1つの選択肢になれば幸いです。
(参考)MDAポリシー定義
せっかくなので、1つポリシーを作成してアラートが上がるかを試してみます。
今回作成するポリシーは以下の条件でアラート出すようにします。
- Oktaで1ユーザーが30分以内に3回ログインを失敗した
ポリシー定義手順
- 「クラウドアプリ」→「ポリシー」→【ポリシー管理】をクリックします。
- 「ポリシー作成」→【アクティビティポリシー】をクリックします。
- ポリシー名に、今回は「Oktaログイン失敗」としました。
- 以下の設定で条件を作成します。
ポリシーテスト
Oktaのログイン画面で適当なユーザー名を入れて、わざと3回以上ログインを失敗させます。
5分後くらいに、アクティビティログに記録されMicrosof Defenderへアラートとして表示されてくれば成功です。
アラート名をクリックすると、詳細が表示されログインしようとしたユーザー名や、どのIPアドレスからか等の表示とともに、3回以上ログインに失敗していることがわかります。
以上です。