Amazon Route 53 應用程式復原控制器中路由控制的身分識別型政策範例 - Amazon 應用程序恢復控制器ARC(

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon Route 53 應用程式復原控制器中路由控制的身分識別型政策範例

根據預設,使用者和角色沒有建立或修改 Route 53 ARC 資源的權限。他們也無法使用 AWS Management Console、 AWS Command Line Interface (AWS CLI) 或執行工作 AWS API。若要授與使用者對所需資源執行動作的權限,IAM管理員可以建立IAM策略。然後,系統管理員可以將IAM原則新增至角色,使用者可以擔任這些角色。

若要瞭解如何使用這些範例原則文件來建立以IAM身分識別為基礎的JSON策略,請參閱使用指南中的IAM建立IAM策略。

如需 Route 53 定義的動作和資源類型的詳細資訊ARC,包括每種資源類型的格式,請參閱服務授權參考中的 Amazon Route 53 應用程式復原控制器的動作、資源和條件金鑰。ARNs

政策最佳實務

以身分識別為基礎的原則會決定某人是否可以在您的帳戶中建立、存取或刪除 Route 53 ARC 資源。這些動作可能會讓您的 AWS 帳戶產生費用。當您建立或編輯身分型政策時,請遵循下列準則及建議事項:

  • 開始使用 AWS 受管原則並邁向最低權限權限 — 若要開始授與使用者和工作負載的權限,請使用可授與許多常見使用案例權限的AWS 受管理原則。它們可用在您的 AWS 帳戶. 建議您透過定義特定於您使用案例的 AWS 客戶管理政策,進一步降低使用權限。如需詳細資訊,請參閱AWS 《IAM使用指南》中針對工作職能的AWS 受管理策略或受管理的策略

  • 套用最低權限權限 — 當您使用原則設定權限時,IAM只授與執行工作所需的權限。為實現此目的,您可以定義在特定條件下可以對特定資源採取的動作,這也稱為最低權限許可。如需有關使用套用權限IAM的詳細資訊,請參閱《使用指南》IAM中的IAM《策略與權限

  • 使用IAM策略中的條件進一步限制存取 — 您可以在策略中新增條件,以限制對動作和資源的存取。例如,您可以撰寫政策條件,以指定必須使用傳送所有要求SSL。您也可以使用條件來授與對服務動作的存取權 (如透過特定) 使用這些動作 AWS 服務,例如 AWS CloudFormation。如需詳細資訊,請參閱《IAM使用指南》中的IAMJSON策略元素:條件

  • 使用 IAM Access Analyzer 驗證您的原IAM則,以確保安全和功能性的權限 — IAM Access Analyzer 會驗證新的和現有的原則,以便原則遵循IAM原則語言 (JSON) 和IAM最佳做法。IAMAccess Analyzer 提供超過 100 項原則檢查和可行的建議,協助您撰寫安全且功能正常的原則。如需詳細資訊,請參閱IAM使IAM用指南中的存取分析器原則驗證

  • 需要多因素驗證 (MFA) — 如果您的案例需要使IAM用者或 root 使用者 AWS 帳戶,請開啟以取得額外MFA的安全性。若要在呼叫API作業MFA時需要,請在原則中新增MFA條件。如需詳細資訊,請參閱《IAM使用指南》中的 < 設定MFA受保護的API存取 >。

如需中最佳作法的詳細資訊IAM,請參閱《IAM使用指南》IAM中的「安全性最佳作法」。

範例:用於路由控制的 Route 53 ARC 主控台存取

若要存取 Amazon Route 53 應用程式復原控制器主控台,您必須擁有至少一組許可。這些權限必須允許您列出和檢視有關 AWS 帳戶. ARC 如果您建立比最基本必要許可更嚴格的身分型政策,則對於具有該政策的實體 (使用者或角色) 而言,主控台就無法如預期運作。

您不需要為只對 AWS CLI 或撥打電話的使用者允許最低主控台權限 AWS API。相反地,只允許存取符合他們嘗試執行之API作業的動作。

若要確保使用者和角色在您僅允許存取特定API作業時仍可使用 Route 53 ARC 主控台,請同時將 Route 53 的ReadOnly AWS 受管理原則附加ARC至實體。如需詳細資訊,請參閱使用者指南中的 R ARC oute 53 Route 53 ARC 受管理策略頁面或向使IAM用者新增權限。

若要讓使用者能夠透過主控台使用 Route 53 ARC 路由控制項功能的完整存取權,請將類似下列的原則附加給使用者,以授與使用者完整權限來設定 Route 53 ARC 路由控制項資源和作業:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "route53-recovery-cluster:GetRoutingControlState", "route53-recovery-cluster:UpdateRoutingControlState", "route53-recovery-cluster:UpdateRoutingControlStates", "route53-recovery-control-config:CreateCluster", "route53-recovery-control-config:CreateControlPanel", "route53-recovery-control-config:CreateRoutingControl", "route53-recovery-control-config:CreateSafetyRule", "route53-recovery-control-config:DeleteCluster", "route53-recovery-control-config:DeleteControlPanel", "route53-recovery-control-config:DeleteRoutingControl", "route53-recovery-control-config:DeleteSafetyRule", "route53-recovery-control-config:DescribeCluster", "route53-recovery-control-config:DescribeControlPanel", "route53-recovery-control-config:DescribeSafetyRule", "route53-recovery-control-config:DescribeRoutingControl", "route53-recovery-control-config:ListAssociatedRoute53HealthChecks", "route53-recovery-control-config:ListClusters", "route53-recovery-control-config:ListControlPanels", "route53-recovery-control-config:ListRoutingControls", "route53-recovery-control-config:ListSafetyRules", "route53-recovery-control-config:UpdateControlPanel", "route53-recovery-control-config:UpdateRoutingControl", "route53-recovery-control-config:UpdateSafetyRule" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "route53:GetHealthCheck", "route53:CreateHealthCheck", "route53:DeleteHealthCheck", "route53:ChangeTagsForResource" ], "Resource": "*" } ] }

範例:用於路由控制組態的 Route 53 ARC API 動作

若要確保使用者可以使用 Route 53 ARC API 動作來處理 Route 53 ARC 路由控制組態,請附加與使用者需要處理之作API業相對應的原則,如下所述。

若要使用復原控制組態的作API業,請將如下所示的原則附加至使用者:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "route53-recovery-control-config:CreateCluster", "route53-recovery-control-config:CreateControlPanel", "route53-recovery-control-config:CreateRoutingControl", "route53-recovery-control-config:CreateSafetyRule", "route53-recovery-control-config:DeleteCluster", "route53-recovery-control-config:DeleteControlPanel", "route53-recovery-control-config:DeleteRoutingControl", "route53-recovery-control-config:DeleteSafetyRule", "route53-recovery-control-config:DescribeCluster", "route53-recovery-control-config:DescribeControlPanel", "route53-recovery-control-config:DescribeSafetyRule", "route53-recovery-control-config:DescribeRoutingControl", "route53-recovery-control-config:GetResourcePolicy", "route53-recovery-control-config:ListAssociatedRoute53HealthChecks", "route53-recovery-control-config:ListClusters", "route53-recovery-control-config:ListControlPanels", "route53-recovery-control-config:ListRoutingControls", "route53-recovery-control-config:ListSafetyRules", "route53-recovery-control-config:ListTagsForResource", "route53-recovery-control-config:UpdateControlPanel", "route53-recovery-control-config:UpdateRoutingControl", "route53-recovery-control-config:UpdateSafetyRule", "route53-recovery-control-config:TagResource", "route53-recovery-control-config:UntagResource" ], "Resource": "*" } ] }

若要使用復原叢集資料平面執行ARC路由控制中的工作API,例如,將路由控制狀態更新為在災難事件期間容錯移轉,您可以將下列原ARCIAM則附加至您的IAM使用者。

AllowSafetyRuleOverride布林值允許覆寫您已設定為路由控制項的保護措施的安全規則。在「破壞」案例中,可能需要此權限,才能略過災難或其他緊急容錯移轉案例中的保護措施。例如,操作員可能需要快速容錯移轉以進行災難復原,而一個或多個安全規則可能會意外地阻止重新路由傳送流量所需的路由控制狀態更新。此權限允許操作員在撥打更新路由控制狀態的API呼叫時指定要覆寫的安全規則。如需詳細資訊,請參閱覆蓋安全規則以重新路線交通

如果您想要允許運算子使用復原叢集資料平面,API但要避免覆寫安全規則,您可以將原則 (如下所示) 附加至AllowSafetyRuleOverridesfalse布林值。若要允許運算子覆寫安全規則,請將AllowSafetyRuleOverrides布林值設定為true

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "route53-recovery-cluster:GetRoutingControlState", "route53-recovery-cluster:ListRoutingControls" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "route53-recovery-cluster:UpdateRoutingControlStates", "route53-recovery-cluster:UpdateRoutingControlState" ], "Resource": "*", "Condition": { "Bool": { "route53-recovery-cluster:AllowSafetyRulesOverrides": "false" } } } ] }