ゼロトラストに対応した特権IDのアクセス制御
schedule 2021/08/20 refresh 2023/11/09
オープンソースの特権ID管理ソフトウェアSeciossPrivilegedIDとSeciossLinkを使用して、証明書によるアクセス端末の制限とアクセス先サーバー毎のアクセス制御を行い、ゼロトラストに対応した特権IDのアクセス制御を行う方法を解説します。
SeciossPrivilegedIDのインストール
SeciossPrivilegedIDは、SeciossPrivilegedIDのサイトの手順に従ってインストールして下さい。
特権IDの設定
SeciossPrivilegedIDの管理コンソール(https://<LISMサーバー>/seciossadmin/)にログインして下さい。
ゲートウェイサーバーの設定
「特権ID管理」-「ゲートウェイサーバー」に、SeciossPrivilegedIDサーバーを設定して下さい。
項目 | 値 |
ゲートウェイサーバーID | SeciossPrivilegedIDのインストール時にgateway-setup.sh実行時に設定したGateway ID |
表示名 | 任意 |
ホスト名 | SeciossPrivilegedIDのホスト名 |
ゲートウェイサーバー証明書 | SeciossPrivilegedIDサーバーの証明書ファイル(/opt/secioss-gateway/www/simplesamlphp/cert/PublicKey.pem) |
ターゲットの設定
「特権ID管理」-「ターゲット」にアクセス先のサーバーを設定して下さい。
今回は、Windowsサーバーを設定します。
項目 | 値 |
ターゲットID | サーバーを識別するID |
ターゲット名 | 任意 |
ゲートウェイサーバー | 先程設定したゲートウェイサーバーを選択 |
接続形式 | RDB |
接続先 | Windowsサーバーのホスト名またはIPアドレス |
ポート番号 | 3389 |
特権IDの設定
「特権ID管理」-「特権ID」から、Windowsサーバーの特権ID(Administrator)を設定して下さい。
項目 | 値 |
サービス | 先程設定したターゲットを選択 |
ログインID | Administrator |
パスワード | Administratorのパスワード |
ユーザーへの特権IDの割り当て
「ユーザー」-「新規登録」から、ユーザーを追加して、「特権ID」タブから特権IDを割り当てます。
サービス | WindowsサーバーのターゲットIDを選択 |
ログインID | Administrator |
取消契機 | 期間指定、または無期限 |
SAML認証の設定
SeciossPrivilegedIDの認証はSAMLで行います。
今回はSAMLのIdPとして、SeciossLinkを使用します。SeciossLinkは評価版をこちらから申し込むこともできます。
SAML の設定
SeciossLinkの管理コンソール(https://slink.secioss.com/seciossadmin/)にログインして、「シングルサインオン」-「SAML」の「登録」から、SAMLのSPとしてSeciossPrivilegedIDのWindowsサーバーを設定します。
※ SeciossPrivilegedIDのターゲット毎にSAML SPの設定を行うので、複数のターゲットを登録した場合、各ターゲット毎にこの設定を行います。
項目 | 値 |
サービスID | SPを識別するID |
サービス名 | 任意 |
エンティティID | ターゲットID |
Assertion Consumer Service | https://<SeciossPrivilegedIDのホスト名>/simplesaml/module.php/saml/sp/saml2-acs.php/<ターゲットID> |
アクセス先URL | https://<SeciossPrivilegedIDのホスト名>/pidgw/access.php?id=Administrator/<ターゲットID> |
IDの属性 | urn:oasis:names:tc:SAML:2.0:nameid-format:persistent |
ユーザーIDの属性 | ユーザーID |
SeciossPrivilegedID側のSAMLの設定で、IdPのエンティティIDにはhttps://slink.secioss.com/<テナントID>、IdPの証明書には「システム」-「IdP証明書」から使用中の証明書をダウンロードして、設定して下さい。
ユーザーの登録
「ユーザー」-「新規登録」でユーザーを追加して下さい。
ユーザーのユーザーIDは、SeciossPrivilegedIDの管理コンソールから登録したユーザーのユーザーIDと同じ値にして、許可するサービスに先程設定したSAML SP(SeciossPrivilegedIDのWindowsサーバー)を設定して下さい。
アクセス制御の設定
アクセス権限の設定
SeciossLinkの管理コンソールの「アクセス権限」-「新規登録」からSeciossPrivilegedIDのWindowsサーバーへのアクセス権限を設定して下さい。
今回、Windowsサーバーにアクセスするには証明書による端末の認証が必要な設定を行います。
項目 | 値 |
ID | アクセス権限を識別するID |
アクセス先のサービス | Windowsサーバー用に設定したSAML SP |
要求される認証方式 | 証明書確認 |
クライアント | ブラウザー PC ブラウザー スマートフォン ブラウザー タブレット |
証明書の設定
端末の証明書認証を行うため、クライアント証明書を用意して、アクセスする端末(PC)にインストールして下さい。
次にSeciossLinkの管理コンソールの「認証」-「証明書認証」にクライアント証明書を発行したCAの設定を行います。
項目 | 値 |
証明書のサブジェクト |
クライアント証明書のサブジェクトのDN サブジェクトのDNが部分一致する値を設定して下さい。 |
CA証明書 | CAの証明書をアップロードして下さい。 |
CRLのURL | CAのCRLをダウンロードするURL |
Windowsサーバーへのアクセス
以下のURLにアクセスして、SeciossLinkにログインすると、最初に証明書が要求され、証明書認証が完了すると、Windowsサーバーにログインすることができます。
https://<seciossPrivilegedIDのホスト名>/pidgw/access.php?id=Administrator/<ターゲットID>
アクセス先のサーバー毎にアクセス権限を細かく設定することができますので、重要なサーバーにはさらに生体認証を追加してセキュリティを強化したりといったことも可能です。