本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
IAM教程:允許用戶管理其憑據和MFA設置
您可以在 [安全認證] 頁面上允許使用者管理自己的多重要素驗證 (MFA) 裝置和認證。您可以使用 AWS Management Console 來設定認證 (存取金鑰、密碼、簽署憑證和SSH公開金鑰)、刪除或停用不需要的認證,以及為使用者啟用MFA裝置。當使用者人數較少時,它十分好用。但隨著使用者人數增加,這個任務很快會變得非常耗時。本教程是為您介紹如何實現這些最佳實務,而不給您的管理員帶來負擔。
本教學課程說明如何允許使用者存取 AWS 服務,但只有在使用者登入時才能存取服務MFA。如果未使用MFA裝置登入,則使用者將無法存取其他服務。
此工作流程有三個基本步驟。
- 步驟 1:建立政策以強制MFA登入
-
建立客戶管理政策,禁止除少數動作以外的所有IAM動作。這些例外允許使用者在「安全性認證」頁面上變更自己的認證並管理其MFA裝置。如需存取該頁面的詳細資訊,請參閱 IAM 使用者如何變更他們自己的密碼 (主控台)。
- 步驟 2:將政策連接到您的測試使用者群組
-
創建一個用戶組,其成員可以完全訪問所有 Amazon EC2 操作(如果他們使用登錄)MFA。若要建立這類使用者群組,請附加呼叫的 AWS 受管理原則
AmazonEC2FullAccess
和您在第一個步驟中建立的客戶管理政策。 - 步驟 3:測試您的使用者存取權限
-
以測試使用者身分登入,以確認在使用者建立MFA裝置之前,對 Amazon 的存取EC2是否遭到封鎖。之後使用者可以使用該裝置登入。
必要條件
若要執行此教學課程中的步驟,您必須具備以下內容:
-
您可以IAM使用具有系統管理權限的使用者身分登入。 AWS 帳戶
-
您在步驟 1 中輸入政策的帳戶 ID 號碼。
若要尋找您的帳戶 ID 編號,請在頁面頂部的導覽列上,選擇 Support (支援),然後選擇 Support Center (支援中心)。您可以在此頁面的 Support (支援) 選單下尋找您的帳戶 ID。
-
屬於IAM使用者群組成員的測試使用者,如下所示:
使用者名稱 | 使用者名稱指示 | 使用者群組名稱 | 新增使用者為成員 | 使用者群組指示 |
---|---|---|---|---|
MFAUser | 僅選擇 啟用主控台存取 (選用) 選項,並指定一組密碼。 | EC2MFA | MFAUser | 請NOT附加任何原則,或以其他方式授與權限給這個使用者群組。 |
步驟 1:建立政策以強制MFA登入
您首先要建立IAM客戶管理的政策,該策略會拒絕所有權限,除了IAM使用者管理自己的認證和MFA裝置所需的權限以外。
-
以具有系統 AWS 管理員認證的使用者身分登入管理主控台。若要遵守IAM最佳做法,請勿使用您的 AWS 帳戶根使用者 認證登入。
重要
IAM最佳做法建議您要求人類使用者與身分識別提供者使用同盟,以 AWS 使用臨時登入資料存取,而不是使用具有長期認證的使用IAM者。建議您僅將使用IAM者用於聯合身分使用者不支援的特定使用案例。
-
在開啟IAM主控台https://console.aws.amazon.com/iam/
。 -
在導覽窗格中,選擇 Policies (政策),然後選擇 Create policy (建立政策)。
-
選擇索JSON引標籤並複製下列JSON原則文件中的文字:AWS:允許 MFA 驗證的 IAM 使用者在安全登入資料頁面上管理自己的登入資料。
-
將原則文字貼到JSON文字方塊中。解決政策驗證期間產生的任何安全性警告、錯誤或一般性警告,然後選擇下一步。
注意
您可以隨時在可視化編輯器和JSON選項之間切換。但是,上方的政策會包含
NotAction
元素,其不受視覺化編輯器支援。針對此政策,您會在 Visual editor (視覺化編輯器) 標籤上看到一個通知。返回以JSON繼續使用此原則。本範例政策不允許使用者在首次登入 AWS Management Console 時重設密碼。在新使用者登入並重設密碼之前,建議您不要將許可授予給他們。
-
在檢視與建立頁面上,針對政策名稱輸入
Force_MFA
。針對政策說明,在標籤區域中輸入This policy allows users to manage their own passwords and MFA devices but nothing else unless they authenticate with MFA.
,您可以選擇性地新增標籤鍵值對至客戶管理政策。檢視政策授與的許可,然後選擇建立政策來儲存您的工作。新的政策會出現在受管政策清單中,並且已準備好連接。
步驟 2:將政策連接到您的測試使用者群組
接下來,將兩個策略附加到測試用IAM戶組,這些策略將用於授予 MFA-protected 權限。
-
在導覽窗格中,選擇 User groups (使用者群組) 。
-
在搜尋方塊中,輸入
EC2MFA
,然後在清單中選擇群組名稱 (非核取方塊)。 -
選擇 許可 標籤、選擇 新增許可,然後選擇 連接政策。
-
在 [將權限原則附加至EC2MFA群組] 頁面的搜尋方塊中,輸入
EC2Full
。然後選擇列表EC2FullAccess中 Amazon 旁邊的複選框。目前先不要儲存您的變更。 -
在搜尋方塊中,鍵入
Force
,然後選取清單MFA中 Force_ 旁邊的核取方塊。 -
選擇連接政策。
步驟 3:測試您的使用者存取權限
在本教程的這一部分中,您以測試使用者身分登入並確認政策是否正常運作。
-
MFAUser
使用您在上一節中指派的密碼登入您的 AWS 帳戶 身分。使用URL:https://
<alias or account ID number>
.signin.aws.amazon.com/console -
選擇EC2開啟 Amazon 主EC2控台,並確認使用者沒有執行任何動作的許可。
-
在右上方的導覽列中,選擇您的
MFAUser
使用者名稱,然後選擇 安全憑證 。 -
現在添加一個MFA設備。在「多重要素驗證」(MFA) 區段中,選擇「指派MFA裝置」。
注意
您可能會收到錯誤,告知您未被授權執行
iam:DeleteVirtualMFADevice
。如果有人先前開始將虛擬MFA裝置指派給此使用者並取消程序,就可能會發生這種情況。若要繼續,您或其他管理員必須刪除使用者現有的未指派虛擬MFA裝置。如需詳細資訊,請參閱我無權執行:iam:DeleteVirtualMFADevice。 -
在本教程中,我們使用虛擬(基於軟件的)MFA設備,例如手機上的 Google 身份驗證器應用程序。選擇 Authenticator app (驗證器應用程式),然後按 Next (下一步)。
IAM生成並顯示虛擬MFA設備的配置信息,包括 QR 碼圖形。此圖形是私密組態金鑰的表示形式,適用於不支援 QR 碼的裝置上的手動輸入。
-
開啟您的虛擬MFA應用程式。如需可用於託管虛擬MFA裝置的應用程式清單,請參閱虛擬MFA應用程式
。) 如果虛擬MFA應用程式支援多個帳戶 (多個虛擬MFA裝置),請選擇建立新帳戶 (新虛擬MFA裝置) 的選項。 -
判斷MFA應用程式是否支援 QR 碼,然後執行下列其中一項操作:
-
從精靈中,選擇 Show QR code (顯示 QR 碼)。然後使用應用程式來掃描 QR 碼。例如,您可選擇相機圖示或選擇與 Scan code (掃描碼) 類似的選項,然後使用裝置的相機掃描碼。
-
在 [設定裝置精靈] 中,選擇 [顯示秘密金鑰],然後在您的MFA應用程式中輸入秘密金鑰。
完成後,虛擬MFA設備開始生成一次性密碼。
-
-
在 [設定裝置] 精靈的 [輸入驗證器應用程式的驗證碼] 中。 」方塊中,輸入虛擬MFA裝置中目前出現的一次性密碼。選擇註冊MFA。
重要
產生代碼之後立即提交您的請求。如果您產生驗證碼,然後等待太長時間才能提交要求,MFA裝置就會成功與使用者建立關聯。但是,MFA裝置不同步。發生這種情況是因為基於時間的一次性密碼(TOTP)會在短時間後過期。這種情況下,您可以重新同步裝置。
虛擬MFA裝置現在已準備就緒,可與之搭配使用 AWS。
-
登出主控台,然後再次以
MFAUser
身分登入。這次 AWS 會提示您從手機輸入MFA驗證碼。收到該代碼後,請將代碼輸入方塊中,然後選擇 Submit (提交)。 -
選擇EC2再次打開 Amazon EC2 控制台。請注意,這次您可以看到所有資訊,並且可以執行所需的任何動作。如果您以此使用者身分前往任何其他主控台,您會看到存取遭拒訊息。原因是本教程中的政策僅授予對 Amazon 的訪問權限EC2。
相關資源
如需其他資訊,請參閱以下主題: