~~NOCACHE~~
# 独自アプリのSAML認証設定
Zabbix5.0を独自アプリとし、SAML認証でログインする手順を記載する。
{{Azure:Enterprise_application:pasted:20210301-221218.png?nolink}}
今回用意した環境は上記の構成図になる。SP=Zabbix、IdP=AzureADになります。
[[InfrastructureConstruction:SAMLAuthenticationSPandIdpCommunication|インフラ構築/認証/SAML認証でSPとIdPの疎通は必要か]]の検証も兼ねています。
## Azure設定
### [Azure Active Directory]-[エンタープライズアプリケーション]をクリックします。
{{Azure:Enterprise_application:pasted:20210228-235419.png?direct 800x0}}
### アプリケーションの追加
#### [新しいアプリケーション]をクリックします。
{{Azure:Enterprise_application:pasted:20210228-235649.png?direct 800x0}}
#### [独自のアプリケーションの作成]をクリックします。
{{Azure:Enterprise_application:pasted:20210228-235804.png?direct 800x0}}
#### 以下の情報を入力し[作成]をクリックします。
・アプリの表示名:任意
・どのような操作を行いたいですか?:ギャラリーに見つからないその他のアプリケーションを統合します。
{{Azure:Enterprise_application:pasted:20210228-235957.png?direct 800x0}}
### ユーザーの追加
#### [ユーザーとグループ]から[ユーザーまたはグループの追加]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-003557.png?direct 800x0}}
#### [選択されていません]をクリックすると、ユーザー選択画面が開くので、ユーザーを選択し[選択]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-004106.png?direct 800x0}}
#### [割り当て]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-004252.png?direct 800x0}}
#### ユーザーが追加されます。
{{Azure:Enterprise_application:pasted:20210301-004419.png?direct 800x0}}
### シングルサインオン設定
#### 2.シングルサインオンの設定の[作業の開始]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-000255.png?direct 800x0}}
#### [SAML]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-000407.png?direct 800x0}}
#### SAMLによるシングルサインオンのセットアップ
##### 基本的なSAML構成
[編集]をクリックし、以下の情報を入力し[保存]をクリックします。
・識別子(エンティティID):%%https://[zabbixサーバのアドレス]/zabbix/sp%%
※複数行ある項目は確定にチェックします。
・応答URL:%%https://[zabbixサーバのアドレス]/zabbix/index_sso.php?acs%%
・ログアウトURL:%%https://[zabbixサーバのアドレス]/zabbix/index_sso.php?sls%%
{{Azure:Enterprise_application:pasted:20210301-001134.png?direct 800x0}}
##### ユーザー属性とクレーム
[編集]をクリックすると、ユーザー属性とクレーム画面に遷移します。
{{Azure:Enterprise_application:pasted:20210301-002142.png?direct 800x0}}
以下の情報を入力し[保存]をクリックします。
・名前:userid(何でも良いです)
・ソース属性:user.userprincipalname
{{Azure:Enterprise_application:pasted:20210301-002527.png?direct 800x0}}
### 証明書(Base64)のダウンロード
後で利用するのでダウンロードしておきます。
{{Azure:Enterprise_application:pasted:20210301-003051.png?direct 800x0}}
## Zabbix設定
### 証明書のインストール
#### ZabbixサーバへSSH接続し、証明書をインストールします。
ダウンロードした証明書(Base64)をテキストで開き内容をコピーしておきます。
# Zabbixの証明書ディレクトリに移動
cd /usr/share/zabbix/conf/certs/
# 証明書ファイルの作成し、証明書(Base64)の内容を貼り付けます。
vi idp.crt
# 証明書ファイルの権限を変更
chmod 644 idp.crt
### SAML設定
#### [管理]-[認証]-[SAML認証の設定]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-010008.png?direct 800x0}}
#### 以下の情報を入力し[更新]をクリックします。
・SAML認証の有効化:チェック
・IdPエンティティID:AzureAD識別子
・SSOサービスURL:ログインURL
・SLOサービスURL:ログアウトURL
・ユーザー名の属性:追加したユーザー属性とクレームの名前
・SPのエンティティID:識別子(エンティティID)
・ログイン時に大文字小文字を区別:チェック
{{Azure:Enterprise_application:pasted:20210301-010424.png?direct 800x0}}
■ Azure画面との対応表
{{Azure:Enterprise_application:pasted:20210301-012012.png?direct 800x0}}
### ユーザーの登録
#### [管理]-[ユーザー]からユーザーを登録します。
・エイリアス:AzureADと同期したユーザーIDと一致させます。
・パスワード:適当で良いです ※SAML認証なので、AzureADのパスワードと一致させる必要なし
{{Azure:Enterprise_application:pasted:20210301-012808.png?direct 800x0}}
## 動作確認
### サインイン
#### サインインまでの遷移
①ZabbixのURLにアクセスするとSAML認証のリンクが表示されます。
②リンクをクリックすると、Microsoftの画面にリダイレクトされます。
③IDを入力し[次へ]をクリックします。
④パスワードを入力し[次へ]をクリックします。
{{Azure:Enterprise_application:pasted:20210301-013613.png?direct 800x0}}
⑤AzureADと同期したオンプレADのアカウントでサインインできました。
Zabbixで登録したパスワードは、オンプレADのアカウント情報とは異なるパスワードを設定しましたが
それでもサインインできたことから、SAML認証にてサインインされたことが動作としても確認とれました。
{{Azure:Enterprise_application:pasted:20210301-013945.png?direct 800x0}}
### サインアウト
#### Zabbix画面でサインアウトをクリックします、Micrsoftの画面にリダイレクトされ、サインアウト画面が表示されます。
{{Azure:Enterprise_application:pasted:20210301-014208.png?nolink}}
{{tag>Azure SAML Zabbix}}