TrustLoginを利用したAWSコンソールログインのセッション有効期限変更方法
弊社ではTrustLoginというサービスを利用してAWSコンソールにログインしています。
TrustLoginはGMOグローバルサイン株式会社製のIDaaSで、シングルサインオン実現のためのサービスです。基本無料で利用可能で、追加オプションも格安で利用できます。
参考までに、TrustLoginを用いたAWSコンソールログインイメージはこちらのAWS稲田様ブログの図&内容が大変分かりやすかったので紹介させていただきます。(構成図のIDプロバイダー → TrustLoginに読み替えて下さい)
弊社では①のステップでTrustLoginへのログイン+ワンタイムパスワードを利用して多要素認証しています。この辺りの設計についても次回以降のブログで紹介できればと思います。
今回の本題に戻りますが、こちらの手順を参考にAWS – TrustLoginの両方をセットアップしてAWSコンソールにログインは出来ました。しかし、セッションが1時間で切れてしまう問題があり、せめて業務時間の間だけはセッションが残るように変更できないか調査しました。
セッション時間に関するAWSドキュメントを探しているとこちらのドキュメントに SessionDurationAttribute という属性があることが分かり、初期値は60分のようです。この値を最大値(12時間)まで延長しました。
具体的なTrustLoginの「SAML属性の設定」パラメータは以下になります。
属性指定名 | 属性種類 | 属性名 | 属性値 |
---|---|---|---|
https://aws.amazon.com/SAML/Attributes/RoleSessionName | Basic | https://aws.amazon.com/SAML/Attributes/RoleSessionName | メンバー メールアドレス |
https://aws.amazon.com/SAML/Attributes/Role | Basic | https://aws.amazon.com/SAML/Attributes/Role | 固定値 ロールARN,プロバイダARN |
https://aws.amazon.com/SAML/Attributes/SessionDuration | Basic | https://aws.amazon.com/SAML/Attributes/SessionDuration | 固定値 43200 |
この設定により1時間でセッションが切れることが無くなり、作業のストレスが緩和されました。
ただしセッション時間を長くすることによるリスクもあるため、セッションを取り消す方法も押さえておく必要があります。