

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

# 为 Boto3 和 Braket SDK AWS CLI 配置配置文件
<a name="braket-using-boto3-profiles"></a>

除非您另有明确说明，否则 Amazon Braket SDK 依赖于默认 AWS CLI 证书。我们建议您在托管 Amazon Braket Notebook 上运行时保留默认设置，因为您必须提供有权启动 Notebook 实例的 IAM 角色。

或者，如果您在本地运行代码（例如在 Amazon EC2 实例上），则可以建立命名 AWS CLI 配置文件。您可以为每个配置文件指定不同的权限集，而不必定期覆盖默认配置文件。

本节简要说明了如何配置这样的 CLI `profile` 以及如何将该配置文件合并到 Amazon Braket 中，以便使用该配置文件的权限进行 API 调用。

**Topics**
+ [步骤 1：配置本地 C AWS LI `profile`](#braket-using-boto3-profiles-step-1)
+ [步骤 2：建立 Boto3 会话对象](#braket-using-boto3-profiles-step-2)
+ [第 3 步：将 Boto3 会话合并到 Braket 中 AwsSession](#braket-using-boto3-profiles-step-3)

## 步骤 1：配置本地 C AWS LI `profile`
<a name="braket-using-boto3-profiles-step-1"></a>

解释如何创建用户以及如何配置非默认配置文件已超出本文档的讨论范围。有关这些主题的更多信息，请参阅：
+  [入门](https://docs.aws.amazon.com/singlesignon/latest/userguide/getting-started.html) 
+  [配置 AWS CLI 要使用 AWS IAM Identity Center](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html) 

要使用 Amazon Braket，您必须向该用户以及相关的 CLI `profile` 提供必要的 Braket 权限。例如，您可以附加**AmazonBraketFullAccess**策略。

## 步骤 2：建立 Boto3 会话对象
<a name="braket-using-boto3-profiles-step-2"></a>

要建立 Boto3 会话对象，请使用以下代码示例。

```
from boto3 import Session

# Insert CLI profile name here
boto_sess = Session(profile_name=`profile`)
```

**注意**  
如果预期的 API 调用具有基于区域的限制，而这些限制与您的 `profile` 默认区域不一致，则可以为 Boto3 会话指定一个区域，如以下示例所示。

```
# Insert CLI profile name _and_ region
boto_sess = Session(profile_name=`profile`, region_name=`region`)
```

对于指定为的参数`region`，请替换一个与 Amazon Braket 可用的值相对应的值`us-east-1`，例如`us-west-1`、等。 AWS 区域 

## 第 3 步：将 Boto3 会话合并到 Braket 中 AwsSession
<a name="braket-using-boto3-profiles-step-3"></a>

以下示例说明如何初始化 Boto3 Braket 会话并在该会话中实例化设备。

```
from braket.aws import AwsSession, AwsDevice

# Initialize Braket session with Boto3 Session credentials
aws_session = AwsSession(boto_session=boto_sess)

# Instantiate any Braket QPU device with the previously initiated AwsSession
sim_arn = 'arn:aws:braket:::device/quantum-simulator/amazon/sv1'
device = AwsDevice(sim_arn, aws_session=aws_session)
```

设置完成后，您可以向该实例化的 `AwsDevice` 对象提交量子任务（例如，通过调用 `device.run(…​)` 命令）。该设备进行的所有 API 调用都可以使用与您之前指定为 `profile` 的 CLI 配置文件关联的 IAM 凭证。