註:筆者居住於韓國,部分內容包含韓國特有的背景。
如果你在公司或組織裡用過 AWS,應該看過下面這種 SSO(Single Sign On)登入頁面。

一旦設定好,工作階段期間不必每次都輸入 id/password,使用起來相當方便。
而且在使用 aws-cli 或 aws-sdk 時,也不必把 AWS_ACCESS_KEY、AWS_ACCESS_SECRET 這類不能外洩的資訊以明文形式存到本機電腦,在安全方面也更為有利。
加上這是免費服務(Link ),完全 不會產生任何額外費用!

那我們就來設定看看吧!
1. 設定 IAM Identity Center
1. 在 AWS 中搜尋 SSO,找到 IAM Identity Center。

2. 點擊啟用!
- 此時,Identity Center 只能在一個區域中啟用,因此在你常用的區域啟用會比較好管理。

3. 先設定 AWS Organization。

- 你會遇到上面這樣的錯誤訊息,請先建立 AWS Organization。
- AWS Organization 同樣是免費服務。(Link )
4. 建立好 Dashboard 後,點擊「前往設定」按鈕進行後續設定。

5. 先為 SSO 登入頁面取個別名吧。
- 預設提供的登入頁面像
aadfbasdf-d.awsapps.com/start這樣自動產生,難以記憶。 - 我們把它改成
lemonlogin.awsapps.com/start這種好記的別名吧。 - 只能設定一次,請慎重決定!


6. 加入群組!

加入群組。
7. 加入使用者!

- 點擊加入使用者按鈕後……

- 填寫使用者資訊。密碼可以透過電子郵件接收設定郵件,也可以使用一次性密碼。
- 我們就用預設的電子郵件方式吧。

之後可以選擇 Group,把第 6 步中設定的群組加進去。
然後查看電子郵件,接受邀請,為該帳號設定 Password 並記錄在某處!
8. 加入權限!

- 選擇權限集。我選的是
AdministratorAccess,你也可以選其他的。 - 如果預先定義的權限集中沒有想要的 Role,也可以使用自訂來直接指定。

- 接著填寫其餘設定。
- 工作階段時長是指經過這段時間後 AWS 會自動登出的時間。
- 預設是 1 小時,頻繁登出有點煩,我延長到了 4 小時左右。
中繼狀態可以設定登入成功後重新導向的 URL。例如 Billing 權限就會在登入成功後導向 Billing 頁面。- 如果有需要,請參考文件(Link )進行設定。我留空了。
9. 設定 SSO 登入

- 接著在 AWS 帳戶頁籤中選擇自己的帳戶,點擊
指派使用者或群組。

- 將上面設定的群組加進來,

- 再把上面設定的權限加上去。
10. SSO 登入

- 現在到第 5 步中設定的 AWS 登入網址登入看看吧。前往
別名.awsapps.com/start進行登入。

- SSO 設定成功!
Appendix 1. 強化安全性

- 進入 IAM Identity Center - 設定,可以為 SSO 帳戶設定 MFA、設定工作階段長度等。
- 即使其他維持預設,也建議開啟
若該使用者沒有已註冊的 MFA 裝置 - 登入時要求註冊 MFA 裝置這個選項。
Appendix 2. 透過 AWS SSO 使用 AWS_CLI

- 完成 SSO 設定後,按上圖使用
aws configure sso進行登入設定。(紅色底線的行是手動輸入的。) - 設定完成後,使用
aws s3 ls等指令確認設定是否正常。

Comments