SAML は、XML をベースにした、認証のためのオープンな標準規格です。Pandora FMS は、内部の SAML IdP(ID プロバイダ) と共に、SP (サービスプロバイダ) として動作します。
管理者は常にローカルのデータベースで認証されます。
管理(Management) → セットアップ(Setup) → セットアップ(Setup) → 認証(Authentication) へ行き、認証方法(Authentication method) で SAML を選択します。
サービスプロバイダの設定をするには、最初に SimpleSamlphp をダウンロードし、/opt/simplesamlphp/ にインストールします。
/simplesaml の認証管理のために、endpoint を設定します。
ln -s /opt/simplesamlphp/www /var/www/html/simplesaml
authsources /opt/simplesamlphp/config/authsources.php に SP を追加します。
'test-sp' => [ 'saml:SP', 'entityID' => 'http://app.example.com', 'idp' => 'http://172.16.0.3:8080/simplesaml/saml2/idp/metadata.php', ],
IdP メタデータを登録します。
$metadata['http://172.16.0.3:8080/simplesaml/saml2/idp/metadata.php'] = array( 'name' => array( 'en' => 'Test IdP', ), 'description' => 'Test IdP', 'SingleSignOnService' => 'http://172.16.0.3:8080/simplesaml/saml2/idp/SSOService.php', 'SingleLogoutService' => 'http://172.16.0.3:8080/simplesaml/saml2/idp/SingleLogoutService.php', 'certFingerprint' => '119b9e027959cdb7c662cfd075d9e2ef384e445f', );
certFingerprint の代わりに、直接認証を使用した認証の検証を使用することをお勧めします。
/opt/simplesamlphp/lib/_autoload.php ファイルが存在することを確認します。
simplesamlphp をインストールしたら、saml でのログインが正しく動作するかを確認します。それには、以下にアクセスし認証元を選択します。
http://<IP_ADDRESS>/simplesaml/module.php/core/authenticate.php
次のようなログイン画面が表示されるので、saml ユーザとパスワードを入力します。
正しくログインできると、すべてのユーザ属性を含む概要画面が表示されます。
こちらのガイドも参考にしてください。SimpleSAMLphp Service Provider QuickStart.
SAML ユーザが Pandora FMS で正しく生成されるためには、SAML 設定に表示される次の識別属性をすべてのユーザに定義する必要があります。
http://<IP_ADDRESS>/simplesaml/module.php/core/authenticate.php
単一属性の利用を選択した場合は、プロファイル属性(Profile attribute) および タグ属性(Tag attribute)が表示されます。そこで、Pandora FMS のプロファイルおよびタグにマッチする SAML 属性を選択します。
複数属性を選択したときは、以下のフォーマットで属性を指定します。
<Attribute Name="MULTIVALUE_ATTRIBUTE"> <AttributeValue>PREFIX:role:rolename</AttributeValue> <AttributeValue>PREFIX:tag:tagname</AttributeValue> </Attribute>
属性を SAML で作成し、Pandora FMS の設定を行うと、次のパラメータが表示されます。