

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon Braket 中的安全性
安全性

云安全 AWS 是重中之重。作为 AWS 客户，您可以受益于专为满足大多数安全敏感型组织的要求而构建的数据中心和网络架构。

安全是双方共同承担 AWS 的责任。[责任共担模式](https://aws.amazon.com/compliance/shared-responsibility-model/)将其描述为云*的*安全性和云*中*的安全性：
+ **云安全** — AWS 负责保护在云中运行 AWS 服务的基础架构 AWS Cloud。 AWS 还为您提供可以安全使用的服务。作为[AWS 合规计划合规计划合规计划合](https://aws.amazon.com/compliance/programs/)的一部分，第三方审计师定期测试和验证我们安全的有效性。要了解适用于 Amazon Braket 的合规计划，请参阅按合规计划提供的[范围内的AWS 服务按合规计划](https://aws.amazon.com/compliance/services-in-scope/)划。
+ **云端安全**-您的责任由您使用的 AWS 服务决定。您还需要对其它因素负责，包括您的数据的敏感性、您公司的要求以及适用的法律法规。

此文档有助于您了解如何在使用 Braket 时应用责任共担模式。以下主题说明如何配置 Braket 以实现安全性和合规性目标。您还将学习如何使用其他 AWS 服务来帮助您监控和保护您的 Braket 资源。

**Topics**
+ [

## 共同承担安全责任
](#braket-shared-security)
+ [

## 数据保护
](#braket-data-protection)
+ [

## 数据留存
](#braket-data-retention)
+ [

# 管理对 Amazon Braket 的访问权限
](braket-manage-access.md)
+ [

# Amazon Braket 服务相关角色
](braket-slr.md)
+ [

# Amazon Braket 的合规性验证
](compliance-validation.md)
+ [

# Amazon Braket 中的基础设施安全性
](infrastructure-security.md)
+ [

# Amazon Braket 硬件提供商的安全性
](third-party-security.md)
+ [

# 适用于 Amazon Braket 的 Amazon VPC 端点
](braket-privatelink.md)

## 共同承担安全责任


安全是双方共同承担 AWS 的责任。[责任共担模式](https://aws.amazon.com/compliance/shared-responsibility-model/)将其描述为云*的* 安全性和云*中* 的安全性：
+  **云安全** — AWS 负责保护在云 AWS 服务 中运行的基础架构 AWS Cloud。 AWS 还为您提供可以安全使用的服务。作为 [AWS 合规性计划](https://aws.amazon.com/compliance/programs/)的一部分，第三方审核人员将定期测试和验证安全性的有效性。要了解适用于 Amazon Braket 的合规性计划，请参阅 [AWS 按合规性计划提供的范围内服务](https://aws.amazon.com/compliance/services-in-scope/)。
+  **云端安全** — 您负责保持对托管在此 AWS 基础架构上的内容的控制。此内容包括您 AWS 服务 使用的的安全配置和管理任务。

## 数据保护


 AWS [分担责任模型分担责任模型](https://aws.amazon.com/compliance/shared-responsibility-model/)适用于 Amazon Braket 中的数据保护。如本模型所述 AWS ，负责保护运行所有内容的全球基础架构 AWS Cloud。您负责维护对托管在此基础结构上的内容的控制。您还负责您所使用的 AWS 服务 的安全配置和管理任务。有关数据隐私的更多信息，请参阅[数据隐私常见问题](https://aws.amazon.com/compliance/data-privacy-faq/)。有关欧洲数据保护的信息，请参阅 *AWS Security Blog* 上的 [AWS Shared Responsibility Model and GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) 博客文章。

出于数据保护目的，我们建议您保护 AWS 账户 凭证并使用 AWS IAM Identity Center 或 AWS Identity and Access Management (IAM) 设置个人用户。这样，每个用户只获得履行其工作职责所需的权限。还建议您通过以下方式保护数据：
+ 对每个账户使用多重身份验证（MFA）。
+ 用于 SSL/TLS 与 AWS 资源通信。我们要求使用 TLS 1.2，建议使用 TLS 1.3。
+ 使用设置 API 和用户活动日志 AWS CloudTrail。有关使用 CloudTrail 跟踪捕获 AWS 活动的信息，请参阅《*AWS CloudTrail 用户指南》*中的[使用跟 CloudTrail 踪](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html)。
+ 使用 AWS 加密解决方案以及其中的所有默认安全控件 AWS 服务。
+ 使用高级托管安全服务（例如 Amazon Macie），它有助于发现和保护存储在 Amazon S3 中的敏感数据。
+ 如果您在 AWS 通过命令行界面或 API 进行访问时需要经过 FIPS 140-3 验证的加密模块，请使用 FIPS 端点。有关可用的 FIPS 端点的更多信息，请参阅《美国联邦信息处理标准（FIPS）第 140-3 版》[https://aws.amazon.com/compliance/fips/](https://aws.amazon.com/compliance/fips/)。

强烈建议您切勿将机密信息或敏感信息（如您客户的电子邮件地址）放入标签或自由格式文本字段（如**名称**字段）。这包括您 AWS 服务 使用控制台、API 或与 Amazon Braket 或其他人合作时。 AWS CLI AWS SDKs在用于名称的标签或自由格式文本字段中输入的任何数据都可能会用于计费或诊断日志。如果您向外部服务器提供 URL，强烈建议您不要在网址中包含凭证信息来验证对该服务器的请求。

## 数据留存


90 天后，Amazon Braket 会自动删除与您的量子任务 IDs 相关的所有量子任务和其他元数据。由于该数据留存策略，尽管这些任务和结果仍存储在您的 S3 存储桶中，但无法再通过从 Amazon Braket 控制台进行搜索来检索。

如果您需要访问在 S3 存储桶中存储超过 90 天的历史量子任务和结果，则必须单独记录任务 ID 以及与该数据关联的其他元数据。请务必在 90 天之前保存信息。您可以使用保存的信息来检索历史数据。

# 管理对 Amazon Braket 的访问权限
管理对 Amazon Braket 的访问权限

本章介绍运行 Amazon Braket 或限制特定用户和角色访问所需的权限。您可以向账户中的任何用户或角色授予（或拒绝）所需的权限。为此，请将相应的 Amazon Braket 策略附加到您账户中的该用户或角色，如以下各节所述。

作为先决条件，您必须[启用 Amazon Braket](https://docs.aws.amazon.com/braket/latest/developerguide/braket-enable-overview.html)。要启用 Braket，请务必以拥有 (1) 管理员权限或 (2) 已分配**AmazonBraketFullAccess**策略并有权创建亚马逊简单存储服务 (Amazon S3) 存储桶的用户或角色登录。

**Topics**
+ [

## Amazon Braket 资源
](#resources)
+ [

## Notebook 和角色
](#notebooks-and-roles)
+ [

# AWS 亚马逊 Braket 的托管政策
](security-iam-aws-managed-policies.md)
+ [

# 限制用户访问某些设备
](restrict-access.md)
+ [

# 限制用户访问某些 Notebook 实例
](restrict-access-notebook-instances.md)
+ [

# 限制用户访问某些 S3 存储桶
](restrict-access-s3-buckets.md)

## Amazon Braket 资源


 Braket 创建了一种资源：*量子任务*资源。此 AWS 资源类型的资源名称 (ARN) 如下所示：
+  **资源名称：***AWS::Service::Braket* 
+  **ARN Regex：arn：\$1 \$1Partition\$1: b** *raket：\$1 \$1Region\$1: \$1 \$1Region\$1: \$1 \$1Account\$1: quantum-task/\$1 \$1\$1 RandomId* 

## Notebook 和角色


您可以在 Braket 中使用 Notebook 资源类型。笔记本是 Braket 能够共享的 SageMaker Amazon 人工智能资源。要将 Notebook 与 Braket 配合使用，必须指定名称以 `AmazonBraketServiceSageMakerNotebook` 开头的 IAM 角色。

要创建 Notebook，必须使用具有管理员权限或附加了以下内联策略的角色。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "CreateTheRole",
      "Effect": "Allow",
      "Action": "iam:CreateRole",
      "Resource": "arn:aws:iam::*:role/service-role/AmazonBraketServiceSageMakerNotebookRole*"
    },
    {
      "Sid": "CreateThePolicy",
      "Effect": "Allow",
      "Action": "iam:CreatePolicy",
      "Resource": [
        "arn:aws:iam::*:policy/service-role/AmazonBraketServiceSageMakerNotebookAccess*",
        "arn:aws:iam::*:policy/service-role/AmazonBraketServiceSageMakerNotebookRole*"
      ]
    },
    {
      "Sid": "AttachTheRolePolicy",
      "Effect": "Allow",
      "Action": "iam:AttachRolePolicy",
      "Resource": "arn:aws:iam::*:role/service-role/AmazonBraketServiceSageMakerNotebookRole*",
      "Condition": {
        "ArnLike": {
          "iam:PolicyARN": [
            "arn:aws:iam::aws:policy/AmazonBraketFullAccess",
            "arn:aws:iam::*:policy/service-role/AmazonBraketServiceSageMakerNotebookAccess*",
            "arn:aws:iam::*:policy/service-role/AmazonBraketServiceSageMakerNotebookRole*"
          ]
        }
      }
    }
  ]
}
```

------

要创建该角色，请按照“[创建 Notebook ](https://docs.aws.amazon.com/braket/latest/developerguide/braket-get-started-create-notebook.html)”页面中给出的步骤进行操作，或者让管理员为您创建该角色。确保已附上该**AmazonBraketFullAccess**政策。

创建角色后，您可以将该角色重复用于将来启动的所有 Notebook。

# AWS 亚马逊 Braket 的托管政策
AWS 托管策略

 AWS 托管策略是由创建和管理的独立策略 AWS。 AWS 托管策略旨在为许多常见用例提供权限，以便您可以开始为用户、组和角色分配权限。

请记住， AWS 托管策略可能不会为您的特定用例授予最低权限权限，因为它们可供所有 AWS 客户使用。我们建议通过定义特定于使用案例的[客户管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)来进一步减少权限。

您无法更改 AWS 托管策略中定义的权限。如果 AWS 更新 AWS 托管策略中定义的权限，则更新会影响该策略所关联的所有委托人身份（用户、组和角色）。 AWS 最有可能在启动新的 API 或现有服务可以使用新 AWS 服务 的 API 操作时更新 AWS 托管策略。

有关更多信息，请参阅《IAM 用户指南》**中的 [AWS 托管式策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)。

**Topics**
+ [

## AWS 托管策略： AmazonBraketFullAccess
](#about-amazonbraketfullaccess)
+ [

## AWS 托管策略： AmazonBraketJobsExecutionPolicy
](#about-amazonbraketjobsexecution)
+ [

## AWS 托管策略： AmazonBraketServiceRolePolicy
](#about-amazonbraketservicerolepolicy)
+ [

## Amazon Braket 更新了托管 AWS 政策
](#braket-aws-managed-policy-updates)

## AWS 托管策略： AmazonBraketFullAccess


该**AmazonBraketFullAccess**政策授予 Amazon Braket 操作权限，包括执行以下任务的权限：
+  **从 Amazon Elastic Container Registry 下载容器**：读取和下载用于 Amazon Braket Hybrid Jobs 功能的容器映像。容器必须符合“arn:aws:ecr:::repository/amazon-braket”的格式。
+  **保留 AWS CloudTrail 日志**-除了启动和停止查询、测试指标筛选器和筛选日志事件外，还适用于所有*描述*、*获取*和*列*出操作。该 AWS CloudTrail 日志文件包含您的账户中发生的所有 Amazon Braket API 活动的记录。
+  **利用角色控制资源**：在您的账户中创建服务相关角色。服务相关角色可以代表您访问 AWS 资源。它只能由 Amazon Braket 服务使用。此外，还可以将 IAM 角色传递给 Amazon Braket `CreateJob`API，创建角色并将范围限定为的策略附加 AmazonBraketFullAccess 到该角色。
+  **创建日志组、日志事件和查询日志组，以维护您账户的使用情况日志文件**：创建、存储和查看账户中有关 Amazon Braket 使用情况的日志信息。查询混合作业日志组的指标。包含正确的 Braket 路径并允许放置日志数据。将指标数据放入 CloudWatch。
+  **在 Amazon S3 存储桶中创建和存储数据，并列出所有存储桶**：要创建 S3 存储桶，请列出您账户中的 S3 存储桶，然后将对象放入账户中名称以 *amazon-braket-* 开头的任何存储桶并从中获取对象。Braket 需要这些权限才能将包含已处理量子任务结果的文件放入存储桶并从存储桶中检索这些文件。
+  **传递 IAM 角色**：将 IAM 角色传递给 `CreateJob` API。
+  **Amazon SageMaker AI Notebook** — 创建和管理范围为 “arn: aws: sagemaker:: notebook-instance/amazon-braket-” 中资源的SageMaker笔记本实例。
+  **验证服务配额** — 要创建 SageMaker AI 笔记本和 Amazon Braket Hybrid 任务，您的资源数量不能超过账户[的配额](braket-quotas.md)。
+  **查看产品定价**：在提交工作负载之前，请查看并计划量子硬件成本。

要查看此策略的权限，请参阅 *AWS 托管策略参考[AmazonBraketFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonBraketFullAccess.html)*中的。

## AWS 托管策略： AmazonBraketJobsExecutionPolicy


该**AmazonBraketJobsExecutionPolicy**策略授予在 Amazon Braket 混合任务中使用的执行角色的权限，如下所示：
+  **从 Amazon Elastic Container Registry **下载容器：读取和下载用于 Amazon Braket Hybrid Jobs 功能的容器映像的权限。容器必须符合“arn:aws:ecr:\$1:\$1:repository/amazon-braket\$1”格式。
+  **创建日志组、日志事件和查询日志组，以便维护您账户的使用情况日志文件**：在您的账户中创建、存储和查看有关 Amazon Braket 使用情况的日志信息。查询混合作业日志组的指标。包含正确的 Braket 路径并允许放置日志数据。将指标数据放入 CloudWatch。
+  **将数据存储在 Amazon S3 存储桶中**：列出您账户中的 S3 存储桶，将对象放入账户名称中以 *amazon-braket-*开头的任何存储桶并从中获取对象。Braket 需要这些权限才能将包含已处理量子任务结果的文件放入存储桶并从存储桶中检索这些文件。
+  **传递 IAM 角色** — 将 IAM 角色传递给 CreateJob API。角色必须符合 arn:aws:iam::\$1:role/service-role/AmazonBraketJobsExecutionRole\$1 的格式。

要查看此策略的权限，请参阅 *AWS 托管策略参考[AmazonBraketJobsExecutionPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonBraketJobsExecutionPolicy.html)*中的。

## AWS 托管策略： AmazonBraketServiceRolePolicy


该**AmazonBraketServiceRolePolicy**政策授予 Amazon Braket 操作权限，包括执行以下任务的权限：
+  **Amazon S3**：列出您账户中的存储桶，以及将对象放入账户中、名称以 `amazon-braket-` 开头的任何存储桶并从中获取对象的权限。
+  **Amazon Lo CloudWatch gs** — 列出和创建日志组、创建关联日志流以及将事件放入为 Amazon Braket 创建的日志组的权限。

有关服务相关角色的更多信息，请参阅[和 Amazon Braket 服务相关的角色](braket-slr.md)。

要查看此策略的权限，请参阅 *AWS 托管策略参考[AmazonBraketServiceRolePolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonBraketServiceRolePolicy.html)*中的。

## Amazon Braket 更新了托管 AWS 政策


下表详细介绍了 Amazon Braket AWS 托管政策自该服务开始跟踪这些更改之时起的更新。


|  **更改**  |  **描述**  |  **日期**  | 
| --- | --- | --- | 
|   [ AmazonBraketServiceRolePolicy](#about-amazonbraketservicerolepolicy)-资源管理政策  |   **在 Amazon S3 中添加了 “a ResourceAccount ws:”: “\$1 \$1aws:PrincipalAccount\$1”** 条件范围并 CloudWatch 记录操作。  |  2025 年 7 月 11 日  | 
|   [AmazonBraketFullAccess](#about-amazonbraketfullaccess)-Braket 的完全访问政策   |   添加了 **“定价：GetProducts”** 操作。  |  2025 年 4 月 14 日  | 
|   [AmazonBraketFullAccess](#about-amazonbraketfullaccess)-Braket 的完全访问政策   |   **在 S3 操作中添加ResourceAccount了 “aws:”: “\$1 \$1aws:PrincipalAccount\$1”** 条件范围。  |  2025 年 3 月 7 日  | 
|   [AmazonBraketFullAccess](#about-amazonbraketfullaccess)-Braket 的完全访问政策   |  添加了 s **ervicequotas: GetServiceQuota 和 **cloudwatch**: 操作**。GetMetricData  |  2023 年 3 月 24 日  | 
|   [AmazonBraketFullAccess](#about-amazonbraketfullaccess)-Braket 的完全访问政策   |  添加了 **s3: ListAllMyBuckets** 权限以查看和检查已使用的 Amazon S3 存储桶。  |  2022 年 3 月 31 日  | 
|   [AmazonBraketFullAccess](#about-amazonbraketfullaccess)-Braket 的完全访问政策   |   Braket 调整了 ia PassRole m: 包含`service-role/`路径的权限。 AmazonBraketFullAccess   |  2021 年 11 月 29 日  | 
|   [AmazonBraketJobsExecutionPolicy](#about-amazonbraketjobsexecution)-Amazon Braket Hybrid Jobs 的混合作业执行政策  |   Braket 更新了混合作业执行角色 ARN，使其包含 `service-role/` 路径。  |  2021 年 11 月 29 日  | 
|   Braket 已开启跟踪更改  |   Braket 开始跟踪其 AWS 托管策略的变更。  |  2021 年 11 月 29 日  | 

# 限制用户访问某些设备


要限制用户访问某些 Braket 设备，您可以向特定 IAM 角色添加*拒绝权限*策略。

可以限制以下操作：
+ `CreateQuantumTask`：拒绝在指定设备上创建量子任务。
+ `CreateJob`：拒绝在指定设备上创建混合作业。
+ `GetDevice`：拒绝获取指定设备的详细信息。

以下示例限制了所有 QPUs 人的访问权限。 AWS 账户 `123456789012`

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
    "Effect": "Deny",
    "Action": [
      "braket:CreateQuantumTask",
      "braket:CreateJob",
      "braket:GetDevice"
    ],
    "Resource": [
    "arn:aws:braket:*:*:device/qpu/*"
    ],
    "Condition": {
             "StringEquals": {
                 "aws:PrincipalAccount": "123456789012"
             }
      }
    }
  ]
}
```

------

**注意**  
从策略中排除该 `braket:GetDevice` 操作，以启用用户通过 Braket 控制台对设备属性（例如设备可用性、校准数据和定价）的读取权限。

要改编此代码，请用受限设备的 Amazon 资源号（ARN）代替上一个示例中显示的字符串。此字符串提供**资源**值。在 Braket 中，设备代表一个 QPU 或模拟器，您可以调用它来运行量子任务。可用设备列在[设备页面](https://docs.aws.amazon.com/braket/latest/developerguide/braket-devices.html)上。有两个架构用于指定对这些设备的访问权限：
+  `arn:aws:braket:<region>:*:device/qpu/<provider>/<device_id>` 
+  `arn:aws:braket:<region>:*:device/quantum-simulator/<provider>/<device_id>` 

 **以下是各种设备访问类型的示例** 
+ 要在所有区域中选择 QPUs 全部，请执行以下操作：`arn:aws:braket:*:*:device/qpu/*`
+ 要仅选择 us-west-2 区域 QPUs 中的所有内容，请执行以下操作：`arn:aws:braket:us-west-2:*:device/qpu/*`
+ 同样，要仅选择 us-west-2 区域 QPUs 中的所有内容（因为设备是一种服务资源，而不是客户资源），请执行以下操作：`arn:aws:braket:us-west-2:*:device/qpu/*`
+ 要限制对所有按需模拟器设备的访问权限，请执行以下操作：`arn:aws:braket:*:*:device/quantum-simulator/*`
+ 要限制特定提供商对设备的访问权限（例如 Rigetti QPU 设备），请执行以下操作：`arn:aws:braket:*:*:device/qpu/rigetti/*`
+ 要限制对 TN1 设备的访问，请执行以下操作：`arn:aws:braket:*:*:device/quantum-simulator/amazon/tn1`
+ 要限制对所有 `Create` 操作的访问，请执行以下操作：`braket:Create*`

# 限制用户访问某些 Notebook 实例


要限制某些用户对特定 Braket Notebook 实例的访问，您可以向特定角色、用户或组添加*拒绝权限*策略。

以下示例使用[策略变量](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html)有效地限制启动、停止和访问中特定笔记本实例的权限 AWS 账户 `123456789012`，该实例根据应具有访问权限的用户命名（例如，用户`Alice`将有权访问名为的笔记本实例`amazon-braket-Alice`）。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyCreateDeleteUpdateNotebookInstances",
      "Effect": "Deny",
      "Action": [
        "sagemaker:CreateNotebookInstance",
        "sagemaker:DeleteNotebookInstance",
        "sagemaker:UpdateNotebookInstance",
        "sagemaker:CreateNotebookInstanceLifecycleConfig",
        "sagemaker:DeleteNotebookInstanceLifecycleConfig",
        "sagemaker:UpdateNotebookInstanceLifecycleConfig"
      ],
      "Resource": "*"
    },
    {
      "Sid": "DenyDescribeStartStopNotebookInstances",
      "Effect": "Deny",
      "Action": [
        "sagemaker:DescribeNotebookInstance",
        "sagemaker:StartNotebookInstance",
        "sagemaker:StopNotebookInstance"
      ],
      "NotResource": [
        "arn:aws:sagemaker:*:123456789012:notebook-instance/amazon-braket-${aws:username}"
      ]
    },
    {
      "Sid": "DenyNotebookInstanceUrl",
      "Effect": "Deny",
      "Action": [
        "sagemaker:CreatePresignedNotebookInstanceUrl"
      ],
      "NotResource": [
        "arn:aws:sagemaker:*:123456789012:notebook-instance/amazon-braket-${aws:username}*"
      ]
    }
  ]
}
```

------

# 限制用户访问某些 S3 存储桶


要限制某些用户访问特定 Amazon S3 存储桶，您可以向特定角色、用户或组添加拒绝策略。

以下示例限制了检索对象并将其放入特定 S3 存储桶 (`arn:aws:s3:::amazon-braket-us-east-1-123456789012-Alice`) 的权限，还限制了这些对象的列表。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Action": [
        "s3:ListBucket"
      ],
      "NotResource": [
        "arn:aws:s3:::amazon-braket-us-east-1-123456789012-Alice"
      ]
    },
    {
      "Effect": "Deny",
      "Action": [
        "s3:GetObject"
      ],
      "NotResource": [
        "arn:aws:s3:::amazon-braket-us-east-1-123456789012-Alice/*"
      ]
    }
  ]
}
```

------

要限制某个 Notebook 实例对存储桶的访问，您可以将上述策略添加到 Notebook 执行角色中。

# Amazon Braket 服务相关角色
服务相关角色

启用 Amazon Braket 时，会在您的账户中创建一个*服务相关角色*。

服务相关角色是一种独特类型的 IAM 角色，它与 Amazon Braket 直接相关。Amazon Braket 服务相关角色是预定义的，包含服务代表您调用其他 AWS 服务 服务时 Braket 所需的所有权限。

服务相关角色可让您更轻松地设置 Amazon Braket，因为您不必手动添加必要的权限。Amazon Braket 可定义其服务相关角色的权限。除非您更改这些定义，否则只有 Amazon Braket 才能承担其角色。定义的权限包括*信任策略*和*权限策略*。不能将该权限策略附加到任何其他 IAM 实体。

Amazon Braket 设置的服务相关角色是 AWS Identity and Access Management（IAM）[服务相关](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#id_roles_terms-and-concepts)角色功能的一部分。有关支持服务相关角色的其他 AWS 服务 信息，请参阅[使用 IAM 的 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)AWS 服务，并查找**服务相关角色**列中显示为“**是**”的服务。请选择**是**与查看该服务的服务相关角色文档的链接。

有关服务相关角色的 AWS 托管式策略的更多信息，请参阅 [AmazonBraketServiceRolePolicy](security-iam-aws-managed-policies.md#about-amazonbraketservicerolepolicy)。

# Amazon Braket 的合规性验证
合规性验证

**注意**  
AWS 合规性报告不涵盖第三方硬件提供商提供的 QPU，他们可以选择实施自己的独立审计。

要了解某个 AWS 服务 是否在特定合规性计划范围内，请参阅[合规性计划范围内的 AWS 服务](https://aws.amazon.com/compliance/services-in-scope/)，然后选择您感兴趣的合规性计划。有关常规信息，请参阅 [AWS 合规性计划](https://aws.amazon.com/compliance/programs/)、、。

您可以使用 AWS Artifact 下载第三方审计报告。有关更多信息，请参阅[在 AWS Artifact 中下载报告](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)、。

您在使用 AWS 服务 时的合规性责任由您的数据的敏感性、您公司的合规性目标以及适用的法律法规决定。有关您在使用 AWS 服务 时的合规责任的更多信息，请参阅 [AWS 安全性文档](https://docs.aws.amazon.com/security/)。

# Amazon Braket 中的基础设施安全性
基础设施安全性

作为一项托管式服务，Amazon Braket 受 AWS 全球网络安全保护。有关 AWS 安全服务以及 AWS 如何保护基础设施的信息，请参阅 [AWS 云安全性](https://aws.amazon.com/security/)。要按照基础设施安全最佳实践设计您的 AWS 环境，请参阅《安全性支柱 AWS Well‐Architected Framework》**中的[基础设施保护](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html)。

您可以使用 AWS 发布的 API 调用通过网络访问 Amazon Braket。客户端必须支持以下内容：
+ 传输层安全性协议（TLS）。我们要求使用 TLS 1.2，建议使用 TLS 1.3。
+ 具有完全向前保密（PFS）的密码套件，例如 DHE（临时 Diffie-Hellman）或 ECDHE（临时椭圆曲线 Diffie-Hellman）。大多数现代系统（如 Java 7 及更高版本）都支持这些模式。

您可以从任何网络位置调用这些 API 操作，但 Braket 不支持基于资源的访问策略，其中可以包含基于源 IP 地址的限制。您还可以使用 Braket 策略控制来自特定 Amazon Virtual Private Cloud (Amazon VPC) 端点或特定 VPC 的访问。事实上，这隔离了在 AWS 网络中仅从特定 VPC 到给定 Braket 资源的网络访问。

# Amazon Braket 硬件提供商的安全性
第三方的安全性

Amazon Braket 上的 QPU 由第三方硬件提供商托管。当您在 QPU 上运行量子任务时，Amazon Braket 会使用 DeviceARN 作为标识符，将电路发送到指定的 QPU 进行处理。

如果您使用 Amazon Braket 访问由第三方硬件提供商运营的量子计算硬件，您的电路及其相关数据将由不在 AWS 运营设施内的硬件提供商处理。有关每个 QPU 可用的物理位置和 AWS 区域的信息，可在 Amazon Braket 控制台的“**设备详情**”部分找到。

您的内容会被匿名处理。只有处理电路所需的内容才会发送给第三方。AWS 账户 信息不会传输给第三方。

静态和传输中的所有数据均会被加密。数据解密仅用于处理之用。Amazon Braket 的第三方提供商不得存储您的内容，也不得将其用于电路处理以外的其他目的。电路完成后，结果将返回到 Amazon Braket 并存储在您的 S3 存储桶中。

定期审计 Amazon Braket 第三方量子硬件提供商的安全性，以确保符合网络安全、访问控制、数据保护和物理安全标准。

# 适用于 Amazon Braket 的 Amazon VPC 端点
VPC 端点（PrivateLink）

您可以通过创建接口 VPC 端点，在 Amazon VPC 与 Amazon Braket 之间建立私有连接。接口端点由一种技术提供支持 [AWS PrivateLink](https://aws.amazon.com/privatelink/)，该技术 APIs 无需互联网网关、NAT 设备、VPN 连接或 Direct Connect 连接即可访问 Braket。您的 VPC 中的实例不需要公有 IP 地址即可与 Braket APIs 通信。

每个接口端点均由子网中的一个或多个[弹性网络接口](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html)表示。

使用 AWS PrivateLink，您的 VPC 和 Braket 之间的流量不会离开Amazon网络，这可以提高您与基于云的应用程序共享的数据的安全性，因为它可以减少您的数据暴露在公共互联网上的风险。有关更多信息，请参阅 Amazon [VPC 用户指南中的使用接口 VPC 终端节点访问 AWS 服务](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)。

**Topics**
+ [

## Amazon Braket VPC 端点注意事项
](#braket-privatelink-considerations)
+ [

## 设置 Braket 然后 PrivateLink
](#braket-set-up-privatelink)
+ [

## 有关创建端点的其他信息
](#braket-more-about-endpoints)
+ [

## 使用 Amazon VPC 端点策略控制访问
](#braket-control-endpoint-access)

## Amazon Braket VPC 端点注意事项


请务必先查看《Amazon VPC 用户指南》**中的[接口端点先决条件](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#prerequisites-interface-endpoints)，然后再为 Braket 连接设置接口 VPC 端点。

Braket 支持从 VPC 调用它的所有 [API](https://docs.aws.amazon.com/braket/latest/APIReference/API_Operations.html) 操作。

默认情况下，允许通过 VPC 端点对 Braket 进行完全访问。如果您指定 VPC 端点策略，则可以控制访问。有关更多信息，请参阅《*Amazon VPC 用户指南*》中的[使用端点策略控制对 VPC 端点的访问](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)。

## 设置 Braket 然后 PrivateLink


要 AWS PrivateLink 与 Amazon Braket 一起使用，您必须创建一个亚马逊虚拟私有云（亚马逊 VPC）终端节点作为接口，然后通过 Amaz API on Braket 服务连接到该终端节点。

以下是该过程的一般步骤，将在后面的章节中详细介绍。
+ 配置并启动 Amazon VPC 来托管您的 AWS 资源。如果您已有 VPC，请跳过此步骤。
+ 为 Braket 创建 Amazon VPC 端点 
+ 通过您的端点连接并运行 Braket 量子任务

### 步骤 1：如果需要，启动 Amazon VPC


请记住，如果您的账户已有 VPC 在运行，则可以跳过此步骤。

使用 VPC 控制您的网络设置，例如 IP 地址范围、子网、路由表和网络网关。本质上，您是在自定义虚拟网络中启动 AWS 资源。有关更多信息 VPCs，请参阅 [Amazon VPC 用户指南](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)。

打开 [Amazon VPC 控制台](https://aws.amazon.com/vpc/)，创建一个包含子网、安全组和网络网关的新 VPC。

### 第 2 步：创建 Braket 接口 VPC 端点


您可以使用 Amazon VPC 控制台或 AWS Command Line Interface (AWS CLI) 为 Braket 服务创建 VPC 终端节点。有关更多信息，请参阅 *Amazon VPC 用户指南*中的[创建 VPC 端点](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint-aws)。

要在控制台中创建 VPC 端点，请打开 [Amazon VPC 控制台](https://aws.amazon.com/vpc/)，打开**端点**页面，然后继续创建新的端点。记下端点 ID 以供日后参考。当您对 Braket API 进行某些调用时，它必须作为 `—endpoint-url` 标志的一部分。

使用以下服务名称为 Braket 创建 VPC 端点：
+  `com.amazonaws.substitute_your_region.braket` 

有关更多信息，请参阅 *Amazon VPC 用户指南中的使用接口 VPC* [终端节点访问 AWS 服务](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)。

### 第 3 步：通过端点连接并运行 Braket 量子任务


在创建 VPC 端点后，您可以使用以下示例之类的 CLI 命令，包括指定 API 或运行时接口端点的 `endpoint-url` 参数：

```
aws braket search-quantum-tasks --endpoint-url VPC_Endpoint_ID.braket.substituteYourRegionHere.vpce.amazonaws.com
```

如果为 VPC 端点启用专用 DNS 主机名，您不需要指定端点作为 CLI 命令的 URL。相反，CLI 和 Braket SDK 默认使用的 Amazon Braket API DNS 主机名会解析到您的 VPC 端点。它的格式如下例所示：

```
https://braket.substituteYourRegionHere.amazonaws.com
```

这篇名为 “[使用 AWS PrivateLink 终端节点从 Amazon VPC 直接访问 Amazon A SageMaker I 笔记本电脑](https://aws.amazon.com/blogs/machine-learning/securing-all-amazon-sagemaker-api-calls-with-aws-privatelink/)” 的博客文章提供了一个示例，说明如何设置终端节点以与 SageMaker 笔记本建立安全连接，与 Amazon Braket 笔记本类似。

如果你正在按照博客文章中的步骤进行操作，请记得用 **AmazonBrak** et 这个名字代替 **Amazon A SageMaker I**。如果您的地区不是 us-ea *st-* 1，请在**服务 AWS 区域 名称**中输入您的正确名称`com.amazonaws.us-east-1.braket`或将其替换为该字符串。

## 有关创建端点的其他信息

+ 有关创建具有私有子网的 VPC 的信息，请参阅[创建具有私有子网的 VPC](https://docs.aws.amazon.com/batch/latest/userguide/create-public-private-vpc.html)。
+ 有关使用 Amazon VPC 控制台或创建和配置终端节点的信息 AWS CLI，请参阅 Amazon [VPC *用户指南中的创建 VPC* 终端节点](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint-aws)。
+ 有关使用创建和配置终端节点的信息 CloudFormation，请参阅《*CloudFormation 用户指南》*[中的AWS:: EC2:: VPCEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html) 资源。

## 使用 Amazon VPC 端点策略控制访问


要控制对 Amazon Braket 的连接访问，您可以在创建 Amazon VPC 端点时附加 AWS Identity and Access Management （IAM）端点策略。该策略指定以下信息：
+ 可以执行操作的主体（用户或角色）。
+ 可执行的操作。
+ 可对其执行操作的资源。

有关更多信息，请参阅《*Amazon VPC 用户指南*》中的[使用端点策略控制对 VPC 端点的访问](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)。

 **示例：操作的 VPC 端点策略** 

下面是用于 Braket 的端点策略的示例。当附加到端点时，此策略会向所有资源上的所有主体授予对列出的 Braket 操作的访问权限。

```
{
 "Statement":[
 {
   "Principal":"*",
   "Effect":"Allow",
   "Action":[
     “braket:action-1",
     “braket:action-2",
     “braket:action-3”
     ],
   "Resource":"*"
   }
  ]
}
```

您可以通过附加多个端点策略来创建复杂的 IAM 规则。有关更多信息以及示例，请参阅：
+  [Step Functions 的亚马逊虚拟私有云端点策略](https://docs.aws.amazon.com/step-functions/latest/dg/vpc-endpoints.html#vpc-iam) 
+  [为非管理员用户创建精细的 IAM 权限](https://docs.aws.amazon.com/step-functions/latest/dg/concept-create-iam-advanced.html) 
+  [使用终端节点策略控制对 VPC 终端节点的访问](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html) 