このセクションでは、ZabbixのSAML2.0認証を有効にするようにOktaを設定する方法について説明します
1. https://okta.comにアクセスして、アカウントに登録またはサインインします。
2. OktaWebインターフェースでアプリケーション→アプリケーションに移動し、[アプリケーションの追加]ボタン()を押します。
3. 「新しいアプリの作成」ボタン() を押し、ポップアップウィンドウでPlatform: Web, Sign on method:SAML2.0と選択して「作成」ボタンを押します。
4. 必要であれば[一般設定]タブ(最初に表示されるタブ)のフィールドに入力し、[次へ]を押します。
5. Configure SAMLタブで以下に示す値を入力し[次へ]を押します。
暗号化接続の使用を計画している場合は、プライベートおよびパブリック暗号化証明書を生成してから、パブリック証明書をOktaにアップロードします。 Assertion Encryptionが暗号化に設定されている場合、証明書のアップロードフォームが表示されます(このパラメーターを見つけるにはShow Advanced Settingsをクリックします)
6. 次のタブで"I'm a software vendor. I'd like to integrate my app with Okta"を選択し「完了」を押します。
7. 次にAssignmentsタブに移動して"Assign"ボタンを押し、ドロップダウンからAssign to Peopleを選択します。
8. 表示されるポップアップで、作成したアプリをSAML 2.0を使用してZabbixで認証するユーザーに割り当て、"Save and go back"を押します。
9. Sign Onタブに移動し、"View Setup Instructions"ボタンを押します。セットアップ手順は新しいタブに表示されます。Zabbixを設定している間、このタブを開いたままにしてください。
1. Zabbixで[管理]→[認証]セクションのSAML設定に移動し、Oktaのセットアップ手順から対応するフィールドに情報をコピーします。
2. Oktaのセットアップ手順ページに記載されている証明書をidp.crtとしてui/conf/certsフォルダーにダウンロードし、次のコマンドを実行してアクセス許可を644に設定します。
古いバージョンからZabbix5.0にアップグレードした場合は、以下をzabbix.conf.phpファイル(//ui//conf//ディレクトリにあります)に手動で追加する必要があることに注意してください。
// Used for SAML authentication.
$SSO['SP_KEY'] = 'conf/certs/sp.key'; // Path to your private key.
$SSO['SP_CERT'] = 'conf/certs/sp.crt'; // Path to your public key.
$SSO['IDP_CERT'] = 'conf/certs/idp.crt'; // Path to IdP public key.
$SSO['SETTINGS'] = []; // Additional settings
詳細については、一般的なSAML認証の手順を参照してください。
3. Assertion EncryptionがOktaでEncryptedに設定されている場合、ZabbixでもEncryptパラメータのチェックボックス「Assertions」をマークする必要があります。
4. "更新"ボタンを押して設定を保存します。
SAMLでサインインするには、Zabbixのユーザー名がOktaの電子メールと一致している必要があります。これらの設定は、ZabbixWebインターフェースの管理→ユーザーセクションで変更できます。