原創(chuàng)|行業(yè)資訊|編輯:胡濤|2023-12-05 10:04:48.933|閱讀 120 次
概述:在本文中,我們將探討什么是 AWS Identity and Access Management (IAM) 以及它如何增強安全性
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
駕馭云服務(wù)的安全環(huán)境可能很復(fù)雜,但 AWS IAM 為安全訪問管理提供了強大的框架。在本文中,我們將探討什么是 AWS Identity and Access Management (IAM) 以及它如何增強安全性。我們還將提供有關(guān)使用 IAM 連接到 Amazon Relational Database Service (RDS) 進行數(shù)據(jù)庫身份驗證的分步指南,確保您的數(shù)據(jù)庫交互既安全又簡化。
dbForge Studio for MySQL是一款專業(yè)的數(shù)據(jù)庫管理、開發(fā)軟件,它能夠使MySQL開發(fā)人員和管理人員在一個方便的環(huán)境中與他人一起完成創(chuàng)建和執(zhí)行查詢,開發(fā)和調(diào)試MySQL程序,自動化管理MySQL數(shù)據(jù)庫對象等工作。 在本文中,我們將使用該工具進行演示~
1.什么是 IAM? AWS IAM 的優(yōu)勢
1.1AWS IAM 的工作原理
1.2AWS IAM 的組件
1.3身份管理的特點
1.4MariaDB、MySQL 和 PostgreSQL 的 IAM 身份驗證的限制
2.如何設(shè)置 IAM 數(shù)據(jù)庫身份驗證
2.1在 Amazon RDS 中創(chuàng)建 MySQL 數(shù)據(jù)庫實例
2.1.1在數(shù)據(jù)庫上啟用 IAM DB 身份驗證
2.1.2創(chuàng)建使用 AWS 身份驗證令牌的數(shù)據(jù)庫用戶帳戶
2.2 創(chuàng)建 IAM 策略
2.3 創(chuàng)建 IAM 角色
3.如何使用 dbForge Studio for MySQL 連接到 AWS RDS
3.1步驟 1:生成 IAM 身份驗證令牌以識別 IAM 角色
3.2步驟 2:使用 dbForge Studio for MySQL 連接到 AWS RDS 實例
4.概括
IAM(即身份和訪問管理)是 Amazon Web Services (AWS) 提供的一項 Web 服務(wù),可幫助您安全地控制對 AWS 資源的訪問。它允許您管理用戶、安全憑證(例如訪問密鑰)以及控制用戶和應(yīng)用程序可以訪問哪些 AWS 資源的權(quán)限。
簡而言之,IAM 身份驗證通過身份驗證令牌啟用數(shù)據(jù)庫連接,該身份驗證令牌是使用與特定角色或用戶關(guān)聯(lián)的 IAM 策略生成的。身份驗證令牌的有效期為 15 分鐘。
IAM 對于管理 AWS 環(huán)境的安全性至關(guān)重要。它允許對誰可以訪問哪些資源、在什么條件下以及使用什么權(quán)限進行精細(xì)控制。這不僅對于安全的系統(tǒng)架構(gòu)很重要,而且對于遵守法規(guī)要求也很重要。IAM 服務(wù)免費提供,并在您的整個 AWS 賬戶中實施。AWS IAM 的其他優(yōu)勢包括:
IAM 提供控制 AWS 賬戶的身份驗證和授權(quán)所需的基礎(chǔ)設(shè)施。
最初,當(dāng)個人或應(yīng)用程序嘗試訪問 AWS 時,他們需要通過提供登錄詳細(xì)信息來證明自己的身份。此步驟稱為身份驗證,涉及根據(jù) AWS 識別的身份驗證憑證,例如 IAM 用戶、IAM 角色、來自外部身份提供商的聯(lián)合用戶或使用 AWS 安全憑證配置的應(yīng)用程序。
身份驗證成功后,實體會尋求使用 AWS 資源的許可。這就是授權(quán)發(fā)揮作用的地方。在這個過程中,AWS 評估是否以及如何允許經(jīng)過身份驗證的身份與特定服務(wù)或資源進行交互。例如,登錄 AWS 管理控制臺后,您不會立即與任何 AWS 服務(wù)交互。但是,一旦您導(dǎo)航到特定服務(wù),授權(quán)檢查就會根據(jù)適用的策略確定您的身份是否具有使用該服務(wù)所需的權(quán)限。這些授權(quán)請求可以由您的 AWS 賬戶內(nèi)的委托人或您信任的其他 AWS 賬戶發(fā)出。
一旦授權(quán)得到確認(rèn),該身份就可以在AWS環(huán)境中執(zhí)行各種任務(wù)。這些任務(wù)的范圍可能包括在 Amazon EC2 中啟動實例、調(diào)整 IAM 組配置以及管理 S3 存儲桶的生命周期,具體取決于授予的權(quán)限。
AWS Identity and Access Management (IAM) 由多個關(guān)鍵組件組成,這些組件協(xié)同工作以安全地管理對 AWS 服務(wù)和資源的訪問。AWS IAM 的關(guān)鍵組件包括:
IAM用戶
用戶是在 IAM 中創(chuàng)建的個人身份,每個身份都有其獨特的一組憑證。這些憑證可用于在與 AWS 服務(wù)交互時對真人或應(yīng)用程序進行身份驗證。每個用戶都可以被授予特定的權(quán)限來控制他們可以在 AWS 中執(zhí)行哪些操作。這種粒度確保每個用戶都按照最小權(quán)限原則進行操作,僅訪問其角色所需的資源。
IAM 組
組作為用戶的集合,簡化了權(quán)限分配過程。您可以創(chuàng)建一個組,向該組應(yīng)用必要的權(quán)限,然后添加用戶,而不是單獨將策略附加到每個用戶。分配給組的任何權(quán)限都會自動應(yīng)用于該組內(nèi)的所有用戶。這不僅簡化了用戶權(quán)限的管理,而且還可以更輕松地同時更新多個用戶的權(quán)限。
IAM 角色
IAM 中的角色旨在委派特定任務(wù)的權(quán)限。與用戶不同,角色沒有一組永久的憑據(jù)。相反,角色提供可由受信任實體(例如 AWS 服務(wù)、應(yīng)用程序或來自不同 AWS 賬戶的用戶)承擔(dān)的臨時安全憑證。當(dāng)應(yīng)用程序需要代表您在 AWS 中執(zhí)行操作或當(dāng)您需要臨時向其他 AWS 賬戶的用戶授予訪問權(quán)限時,這特別有用。
IAM 政策
策略是定義 IAM 內(nèi)權(quán)限的文檔。這些文檔以 JSON 編寫,指定用戶、組或角色允許或拒絕的操作。可以微調(diào)策略來控制對特定 AWS 服務(wù)或資源的訪問,并且可以包括何時以及如何應(yīng)用權(quán)限的條件。這種詳細(xì)的控制級別對于保護資源和確保用戶只能執(zhí)行履行其工作職責(zé)所需的操作至關(guān)重要。
連接限制:如果您的應(yīng)用程序每秒需要超過 200 個新連接,則 IAM 數(shù)據(jù)庫身份驗證可能不適合。
身份驗證令牌大小注意事項:IAM 數(shù)據(jù)庫身份驗證令牌的大小受多種因素影響,包括 IAM 標(biāo)簽的數(shù)量、IAM 服務(wù)策略的具體情況、ARN(Amazon 資源名稱)的長度以及其他相關(guān)的 IAM 和數(shù)據(jù)庫屬性。雖然此令牌的最小大小通常約為 1 KB,但根據(jù)這些因素,它可能會更大。驗證您的數(shù)據(jù)庫驅(qū)動程序(例如 ODBC)和您使用的任何工具是否可以不受限制地處理令牌的大小非常重要。如果令牌被截斷,它將使其對于身份驗證過程無效,因為數(shù)據(jù)庫和 IAM 將無法驗證它。
SSL/TLS 要求:IAM 數(shù)據(jù)庫身份驗證需要與數(shù)據(jù)庫的 SSL 連接。您必須確保您的數(shù)據(jù)庫連接配置為使用 SSL,否則身份驗證過程將失敗。
PostgreSQL 中的身份驗證優(yōu)先級:對于運行 PostgreSQL 的實例,如果rds_iam角色與用戶(包括 RDS 主用戶)關(guān)聯(lián),則 IAM 身份驗證將優(yōu)先于密碼身份驗證。因此,該用戶必須作為 IAM 用戶進行身份驗證。這意味著一旦為用戶啟用 IAM 身份驗證,您必須使用 IAM 方法登錄,因為密碼驗證將不再適用于該用戶。
IAM 和 Kerberos 身份驗證的排他性:在 Amazon RDS for PostgreSQL 上,存在阻止同時使用 IAM 和 Kerberos 身份驗證方法的限制。如果啟用 IAM 身份驗證,則無法使用 Kerberos,反之亦然。這種排他性要求在為 PostgreSQL 配置 RDS 實例時在兩種身份驗證方法之間進行選擇。
IAM 身份驗證和復(fù)制:對于 Amazon RDS 上的 PostgreSQL,IAM 身份驗證無法用于建立復(fù)制連接。這意味著,對于任何需要數(shù)據(jù)庫復(fù)制的操作,您將需要依靠傳統(tǒng)的密碼身份驗證或其他支持的方法(而不是 IAM)來設(shè)置和管理復(fù)制流程。
區(qū)域可用性:IAM 數(shù)據(jù)庫身份驗證僅在某些 AWS 區(qū)域可用,因此您需要確保部署 RDS 實例的區(qū)域支持它。
AWS RDS 版本:僅與 AWS RDS 平臺兼容的特定 MySQL 版本支持 IAM 身份驗證。您需要驗證您的 MySQL 版本是否支持 IAM 身份驗證。
2.1創(chuàng)建 IAM 數(shù)據(jù)庫
首先,登錄 AWS 管理控制臺。然后導(dǎo)航到 RDS 儀表板,選擇要在其中創(chuàng)建數(shù)據(jù)庫的 AWS 區(qū)域,然后單擊創(chuàng)建數(shù)據(jù)庫。
或者,您可以從“數(shù)據(jù)庫”部分創(chuàng)建數(shù)據(jù)庫。
將打開“創(chuàng)建 數(shù)據(jù)庫” 頁面。單擊“輕松創(chuàng)建” ,然后在 “配置”中選擇 “MySQL”。
接下來,對于 數(shù)據(jù)庫實例大小,選擇免費層。對于 數(shù)據(jù)庫實例標(biāo)識符,輸入所需的數(shù)據(jù)庫標(biāo)識符。對于 Master username,輸入主用戶的名稱,或保留默認(rèn)名稱。
要讓數(shù)據(jù)庫自動創(chuàng)建主密碼,請選擇自動生成密碼選項。如果您希望設(shè)置自己的主密碼,請確保未選擇“自動生成密碼”選項,然后在“主密碼”和“確認(rèn)主密碼”字段中輸入您選擇的密碼。
完成后,單擊創(chuàng)建數(shù)據(jù)庫。新創(chuàng)建的數(shù)據(jù)庫將出現(xiàn)在數(shù)據(jù)庫列表中。請注意,新數(shù)據(jù)庫最多可能需要 20 分鐘才能可用。
要了解有關(guān)如何在 Amazon RDS 上部署 MySQL 數(shù)據(jù)庫實例的更多信息,請參閱。
2.1.1在數(shù)據(jù)庫上啟用 IAM DB 身份驗證
現(xiàn)在我們已經(jīng)創(chuàng)建了一個新數(shù)據(jù)庫,我們需要在其上啟用 IAM 數(shù)據(jù)庫身份驗證。
4.將打開“修改數(shù)據(jù)庫實例”頁面。向下滾動到數(shù)據(jù)庫身份驗證部分,然后單擊選擇密碼和 IAM 數(shù)據(jù)庫身份驗證。
2.1.2創(chuàng)建使用 AWS 身份驗證令牌的數(shù)據(jù)庫用戶帳戶
運行以下 SQL 命令來創(chuàng)建使用 AWS IAM 身份驗證令牌的新用戶。
CREATE USER 'new_user'@'%' IDENTIFIED WITH AWSAuthenticationPlugin AS 'RDS';
替換new_user為您想要的用戶名。
2.2創(chuàng)建 IAM 策略
現(xiàn)在,您需要創(chuàng)建一個將數(shù)據(jù)庫用戶映射到 IAM 角色的 IAM 策略。為此,請導(dǎo)航至身份和訪問管理 (IAM)。然后,在導(dǎo)航窗格中選擇策略并單擊創(chuàng)建策略。
將打開“創(chuàng)建 策略”頁面。轉(zhuǎn)到JSON選項卡以輸入策略。
上圖中顯示的策略示例包含單個語句,其結(jié)構(gòu)如下:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rds-db:connect", "Resource": "arn:aws:rds-db:region:account-id:dbuser:db-instance-identifier/database-username" } ] }
它由以下元素組成:
作用:指定Allow授予對數(shù)據(jù)庫的訪問權(quán)限。如果未明確指定訪問,則默認(rèn)情況下會拒絕訪問。
操作:指定允許連接到數(shù)據(jù)庫。rds-db:connect
資源:定義唯一標(biāo)識特定數(shù)據(jù)庫上的單個數(shù)據(jù)庫賬戶的 Amazon 資源名稱 (ARN)。
region將、、和替換為您的實際 AWS 區(qū)域、您的 AWS 賬戶 ID、您的 RDS 實例標(biāo)識符以及您想要映射到 IAM 角色的數(shù)據(jù)庫用戶名。account-iddb-instance-identifierdatabase-username
完成后,單擊“下一步”。
在下一頁上,為您的策略指定一個有意義的名稱和描述。然后,單擊“創(chuàng)建策略”進行保存。
由于本文篇幅較長,繼續(xù)瀏覽,請?zhí)D(zhuǎn)至下一章,《什么是 AWS IAM?如何使用 IAM 數(shù)據(jù)庫身份驗證連接到 Amazon RDS(下)》也歡迎加入下方數(shù)據(jù)庫交流群
數(shù)據(jù)庫管理工具交流群:765665608 歡迎進群交流討論
正版數(shù)據(jù)庫管理軟件下載、購買、授權(quán)咨詢,請點這里!
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn