本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Aurora DSQL 中的資源型政策封鎖公開存取
封鎖公開存取 (BPA) 是一項功能,可識別和防止連接以資源為基礎的政策,以授予您 AWS 帳戶中 Aurora DSQL 叢集的公開存取權。使用 BPA,您可以防止公開存取您的 Aurora DSQL 資源。BPA 會在建立或修改資源型政策期間執行檢查,並協助改善 Aurora DSQL 的安全狀態。
BPA 會使用自動推理
重要
BPA 可防止透過直接連接到叢集等 Aurora DSQL 資源的資源型政策授予公開存取,以協助保護您的資源。除了使用 BPA 外,請仔細檢查下列政策,確認這些政策未授予公開存取權:
連接到相關聯 AWS 主體的身分型政策 (例如 IAM 角色)
連接至相關聯 AWS 資源的資源型政策 (例如 AWS ,Key Management Service (KMS) 金鑰)
您必須確保主體不包含 * 項目,或由指定的條件金鑰之一限制主體對資源的存取。如果以資源為基礎的政策跨 AWS 帳戶授予對叢集的公有存取權,Aurora DSQL 會阻止您建立或修改政策,直到政策中的規格更正並視為非公有。
您可以在 Principal 區塊內指定一個或多個主體,將政策設為非公開。下列資源型政策範例透過指定兩個主體來阻止公開存取。
{ "Effect": "Allow", "Principal": { "AWS": [ "123456789012", "111122223333" ] }, "Action": "dsql:*", "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/cluster-id" }
指定特定條件金鑰以限制存取的政策,也不會被視為公開。除了評估資源型政策中指定的主體外,下列受信任條件金鑰也用於完成非公開存取的政策評估。
aws:PrincipalAccountaws:PrincipalArnaws:PrincipalOrgIDaws:PrincipalOrgPathsaws:SourceAccountaws:SourceArnaws:SourceVpcaws:SourceVpceaws:UserIdaws:PrincipalServiceNameaws:PrincipalServiceNamesListaws:PrincipalIsAWSServiceaws:Ec2InstanceSourceVpcaws:SourceOrgIDaws:SourceOrgPaths
此外,若要使資源型政策為非公開,Amazon Resource Name (ARN) 與字串金鑰的值不得包含萬用字元或變數。若您的資源型政策使用 aws:PrincipalIsAWSService 金鑰,您必須確保已將該金鑰值設為 true。
下列政策限制指定帳戶中使用者 Ben 的存取權。該條件使 Principal 受限,因此不被視為公開。
{ "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "dsql:*", "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/cluster-id", "Condition": { "StringEquals": { "aws:PrincipalArn": "arn:aws:iam::123456789012:user/Ben" } } }
下列非公開的資源型政策範例使用 StringEquals 運算子來限制 sourceVPC。
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "dsql:*", "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/cluster-id", "Condition": { "StringEquals": { "aws:SourceVpc": [ "vpc-91237329" ] } } } ] }