本記事では、以下のような課題をお持ちの方に向けて、Oracle Identity Cloud Service(IDCS)とLinux-PAMを連携した認証方式の実装手順を詳しく解説します。
- IDCSを利用中の環境で、Linuxサーバーへのログイン時にOSのローカル認証ではなく、IDCS上のユーザー認証を利用したい。つまり、Linux側で通常のOSユーザー(useradd)を作成せずとも、IDCSに登録されたユーザー名とパスワードだけでログインできるようにしたい。
- IDCSが標準で備える多要素認証(Multi-factor Authentication、MFAと省略)機能を活用し、Linuxサーバーへのログイン時にもMFAを適用することで、セキュリティを強化したい。
なお、Oracle IDCSは今後、新サービスであるIdentity Domainへの移行が予定されています。本記事は従来のIDCS構成を対象としており、Identity Domain版の手順については別記事にて紹介予定です。
Linux PAMとは
Linux Pluggable Authentication Module(PAM)は、IDCSをバックエンド認証源として利用するためのLinux標準認証モジュールです。
PAMを導入することで、Linux管理者やエンドユーザーは、NSS(Name Service Switch)を介して、id、groups、getentなどの標準Linuxコマンドを用いて、IDCS内のユーザーおよびグループ情報を参照できるようになります。
認証時には、LinuxとIDCS間でHTTPSによる暗号化通信が行われ、セキュリティも確保されます。
対応OSバージョン
- Oracle Enterprise Linux 6.8+
- Oracle Enterprise Linux 7
- Oracle Enterprise Linux 8
本記事初回公開時(2022年10月)にはOEL 8は非対応でしたが、2023年1月23日よりOEL 8も正式に対応済みです。
検証環境
| 項目 | 内容 | コメント |
|---|---|---|
| 関連サービス | Oracle IDCS | |
| OCI Compute (VM) | Oracle Linux 7.9 | |
| リージョン | 東京 |
必要スキル
以下のレベルの知識・操作経験があれば問題なく進められます。
- Oracle IDCSの基本概念(ユーザー、グループ、アプリケーション、AppRoleなど)を理解している
- Linux OSの基本操作(ssh、yum、curl、vi など)ができる
設定プロセスはやや長く複雑ですが、初めての方でも最後までお付き合いいただければ、確実に実装できるようご説明します。
作業ステップ
- 1. 機密アプリケーションの構成 (IDCS)
- 2. Linux-PAMのグループおよびユーザーの構成
- 3. Linux-PAMのインストールおよび構成
- 4. MFA認証の有効化
- 付録 - ドキュメントの注意点
リンクから、詳細をご確認いただけます。
関連記事
クラウド技術ブログ一覧
