皆さん、こんにちは。
ネットワールドSE 西日本技術部の廣澤です。
今回は、以前投稿した「IPSec-VPN(IKEv2)でSAML認証」の続編として、
「IPSec-VPN(IKEv2)でSAML認証しながら、グループマッチング機能を試す Okta編」
をご紹介いたします。
もし、ご興味のある方がいらっしゃれば、是非読み進めていただければと思います。
複数のSAML対応サービス/製品の併用には注意が必要!
設定方法の説明に入る前に、注意点をお伝えします。
FortiGateは、OktaやEntraIDといったIDaaSとのSAML連携に対応しています。
また、Passlogicのようなオンプレ製品ともSAML連携が可能です。
ですが、これらの併用には注意が必要です。
FortiGateでSAML認証を行うには、
1つのポートに1つのSAML連携設定を紐づける
設定が必要になります。

この制約があるため、インターネット回線が1つしかない環境では1つのSAML連携しか利用できません。

EntraIDとOktaを併用している場合は、
EntraIDとOkta間でユーザ情報を連携する等の対応が必要となります。
SAML連携設定
上記の前提を踏まえて、ここからはOktaとのSAML連携の設定方法をご紹介します。
なお、Oktaでは既に以下が完了している前提となります。
・ユーザ作成
・グループ作成
・ユーザのグループ割り当て
構成図

※注意:Okta環境は「Okta Integrator Free Plan」という開発者用環境を利用しています。
※現在Oktaの設定サービス提供は準備中となります。
1.IdP「Okta」事前設定
アプリケーションの作成を行います。



ここまで完了したらFortiGateの設定に移行します。
2.SP「FortiGate」事前設定
IPSec-VPN接続時にSAML認証を受信する任意のサービスポート番号を設定します。
(デフォルト設定は「1001」)

FortiGateでシングルサインオン(SAML連携)設定を作成します。

アドレスを入力すると自動的にエンティティIDとACS URLが生成されます。

ここまでで事前設定は完了となります。
3.IdP「Okta」SAML連携設定
FortiGate(SP)で控えた情報を入力します。

属性情報を交換するための識別子を設定します。


「社内アプリ」にチェックを入れて「終了」をクリックします。

作成したアプリケーションにグループ割り当てを行います。


「割り当て」をクリックすると、「割り当て済み」に変化します。
対象グループを全て「割り当て済み」にして「完了」をクリックします。

グループがアプリに割り当てられていることを確認します。

Oktaの情報と証明書を控えます。



以上でOktaの設定は完了となります。
4.SP「FortiGate」SAML連携
Okta(IdP)で控えた情報を入力します。

属性の識別子を入力して「OK」をクリックします。

SAML連携を参照したリモートユーザグループを作成します。




グループ毎に異なるポリシーを適用する場合、グループの数だけ上記の手順を繰り返します。

インターフェースにSAML連携の設定を紐づけます。

作成したリモートユーザグループを使用してIPSec-VPNの設定を作成します。
以上でFortiGateの設定は完了となります。
動作確認
PCからIPSec-VPNでFortiGateに接続します。
接続に利用するアカウントは、
・VPN接続が許可されたグループに含まれるメンバーアカウント
・VPN接続が許可されていないグループに含まれるメンバーアカウント
上記の2つを利用します。
接続が許可されたグループメンバー
まず、許可されたグループメンバーで接続します。
Oktaのログイン画面が表示されるのでログインします。



ログインに成功すると一瞬だけログインに成功したことを示すメッセージが表示され、
すぐにログインウィンドウが閉じられます。
そして、FortiGateへのVPN接続に成功します。

接続が許可されていないグループメンバー
次に、誤ったグループメンバーで接続します。
Oktaのログイン画面が表示されるのでログインします。



正しいグループメンバーと同様にログインに成功したことを示すメッセージが表示されますが、
VPN接続には失敗します。

どちらのアカウントもOktaに登録されていますが、
グループによってFortiGate側が接続を許可/拒否(グループマッチング)していることが分かります。
最後に
OktaでもEntraIDと同様にグループマッチングが出来ました。
FortiGate側の設定はOktaとEntraIDで大きな違いは無いため、
ご利用されているIDaaSに合わせて、記事をご参照いただければと思います。
【Fortinet】IPSec-VPN(IKEv2)で「SAML+グループマッチング」してみた EntraID編 - ネットワールド らぼ
免責事項
- 本書は、株式会社ネットワールド(以下 弊社)が作成・管理します。
- 本書の記載内容の一部または全部を弊社に無断で改変・転載することを禁じます。
- 本書の記載内容は、一部または全部が将来予告無く変更されることがあります。
- 本書の利用は、利用者様の責任において行われるものとします。
- 本書の記載内容には、最善の注意を払っておりますが、正確性・完全性を保証するものではありません。
従いまして、本書の利用によって生じたあらゆる損害に関して、弊社は一切の責任を負いません。