PassLogicのSAML連携機能で「AWS」にログイン
パスロジが提供する企業・団体向けの認証システム「PassLogic」は、業務システムへの認証を通常のID&パスワード認証から、デバイスレス・ワンタイムパスワード認証や、TOTP型のワンタイムパスワード認証に置き換えて、認証セキュリティを強化するソフトウェアです。
この記事では「Amazon Web Service(AWS)」上にPassLogicサーバーを構築した後、「AWS IAM」とPassLogicをSAML連携し、IAM上に設定した「ロール」にPassLogicのユーザーがログインするまでの設定プロセスをご紹介します。
AWS IAMとは
AWS IAM (Amazon Web Service Identity and Access Management) は、AWSリソースへのアクセスを制御するためにAWSが用意した機能です。ルートユーザーは、その権限を分け与えたアカウント「IAMユーザー」や、権限の範囲を設定した「ロール」を設定し、制御された状態でAWSのリソースを使用させることができます。
AWS IAMについてはこちら
※IAM管理者のユーザーおよびグループの作成についても記載されています。
AWS IAMをPassLogicに連携させることで、認証用機器が要らないワンタイムパスワードによる認証強化が実現します。
認証用機器が不要ということは、その分の導入・管理コストも不要で、ユーザーの機器の持ち運びも不要になります。
また、他のシステムとも連携させることで、シングルサインオン環境も実現できます。
また、今回ご紹介するSAML連携では、AWS側にユーザーを作る必要がなく、PassLogic側で一元管理できます。
ユーザー側でAWSログイン用のパスワードを設定する必要がなくなることもメリットと言えるでしょう。
それでは、設定手順を紹介していきます。
こちらは設定手順のムービーです。
PassLogicでAWSへログインする設定方法
下記では、ムービーの内容をテキスト化して、内容を説明していますので、あわせてご参照ください。
1.PassLogic管理画面からAWSを連携先に登録
まず、PassLogic管理画面にログインします。
証明書と秘密鍵の登録
メニューから SAML > 証明書管理 を選択
証明書と秘密鍵を読み込んで登録します。(証明書の登録は必須作業となります)
※読み込む証明書と秘密鍵はご自身でご用意ください。
PassLogicで証明書を作成する方法
ルート証明書の発行
SAML 証明書は外部機関で発行した証明書や OpenSSL 等により独自に作成する方法もありますが、 PassLogic の PKI 機能を利用して作成することもできます。
PKI 設定 > PKI 設定状況 画面から ルート証明書設定 ボタンをクリックします。
下記の内容を入力後、設定ボタンをクリックし登録を完了します。
証明書・秘密鍵のダウンロード
ルート証明書設定完了後、再度 PKI 設定 > PKI 設定状況 画面を開き、ルート証明書設定ボタンをクリックします。
証明書のダウンロードボタン、秘密鍵のダウンロードボタンをそれぞれクリックし、AWSの連携登録(後述)で登録する証明書(root.crt)、秘密鍵(root.key)をダウンロードします。
AWSの連携登録
SAML > SP登録(SP:連携サービスプロバイダー)
AWSを追加登録します。
追加ボタンをクリックし、登録フォームに必要事項を入力
フォーム項目 | 設定 |
---|---|
No. | 表示順の番号(数字)を入力 |
プロバイダ | 任意の名称を入力します。(例:AWS) |
SAMLタイプ | Idp initiated SSO を選択 |
NameIDフォーマット | SAML:2.0のtransient or persistantを選択 |
ドメイン | aws.amazon.comを入力 |
Recipient | “https://signin.aws.amazon.com/saml”を入力 |
Passlogic FQDN | “https://<当PassLogicのFQDN 又はIP Address>”を入力 |
Issuer | Passlogic FQDN欄と同じものを入力 |
Attribute mapping1 | Roleとして渡す変数名と対応する値を指定します。今回は各ユーザーの「備考」の値を使用します。 https://aws.amazon.com/SAML/Attributes/Role 備考 |
Attribute mapping2 | RoleSessionNameは今回はuidを指定します。 https://aws.amazon.com/SAML/Attributes/RoleSessionName uid |
決定ボタンを押します。
これでAWSをSPとして登録できました。
登録済みSPの一覧からAWSのidp metadataをダウンロードしてローカルに保存しておきます。
(この管理画面はプロセス3でまた使うのでそのままにしておきます)
2. AWSマネジメントコンソール画面で、AWS IAMからIdpとしてPassLogicを登録
新しいウィンドウを開き、AWSマネジメントコンソールにログインします。
PassLogicをプロバイダー登録
- セキュリティ、アイデンティティ、コンプライアンスの欄のIAMをクリック
- IDプロバイダー>プロバイダーの作成ボタンをクリック
- プロバイダーのタイプ “SAML”を選択します
- プロバイダ名に、任意の名前を入力します(PassLogicなど)
- メタデータドキュメント、ファイルを選択ボタンをクリックし、先ほどダウンロードして保存しておいたmetadataを読み込みます
登録するプロバイダー情報が表示されますので、確認して Create をクリックして終了します。これでPassLogicがSAMLプロバイダーとして登録されました。
ロールの作成
次はこのプロバイダーを使用したロールを作成します。
- 左メニューのロールをクリック
- ロールの作成ボタンをクリック
- 信頼されたエンティティの種類を選択からSAML 2.0 フェデレーションを選択
- ラジオボタンで、先ほど登録したプロバイダー(PassLogicなど)を選択し、”プログラムによるアクセスとAWSマネジメントコンソールによるアクセスを許可する”を選択
- 次のステップ:アクセス情報ボタンをクリックして進みます。
- ポリシータイプの検索で CloudWatch と入力。
- ClowdWatchLogsReadOnlyAccessにチェックをつけ、次のステップ:確認ボタンをクリックして進みます。
- ロール名に名前をつけ(PassLogicなど)ロールの作成ボタンをクリックしてロールの作成を終了します。
- ロール一覧から今登録したロール(PassLogicなど)をクリック。
信頼関係タブをクリックして画面をそのままにしておきます。
(次のプロセス3でこの画面に表示された値をコピーします)
3.ロールの連携に必要な情報をPassLogicに登録
開いておいたPassLogic管理画面を表示させます。
・メニューから ユーザ管理>ユーザ一覧 を選択
・ユーザーを選択して、編集をクリック
備考欄に、AWSマネジメントコンソール画面に表示された
「ロールARN」の値
「信頼されたエンティティ」の値
をカンマ区切りで連ねて入力して、次へをクリック
備考欄の入力内容を確認し、登録ボタンをクリックしてユーザー情報の更新を完了します。
これでPassLogicからAWSへのログインの準備が整いました。
連携設定の確認
試しにログインして連携クラウドのところにAWSが正しくリストされていたらクリックしてAWSマネジメントコンソールにアクセスできることを確認してください。
なお、この設定では
管理ツール>CloudWatch
と進むとLogの閲覧権限のみでダッシュボードへのアクセス権限がない旨が表示されます。
メニューから ログ>ロググループを選択>ログストリームを選択
ログが表示されればOKです。
連携検証済み製品との連携検証資料
今回はPassLogicとAWSとのSAML連携方法についてご紹介しましたが、他のSAML対応製品・サービスについても連携可能です。ぜひお試しください。
※連携方法については製品・サービスごとに異なります。
PassLogicとの連携検証済みの製品やサービスについては、連携製品ページをご覧ください。
各種資料の提供をご希望の方は、「PassLogicお問い合わせフォーム」よりお申し込みください。
※記事中に記載されている、会社名、製品名、ロゴ等は、各社の登録商標または商標です。