

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

# AWS 用户体验自定义如何与 IAM 配合使用
<a name="security_iam_service-with-iam"></a>

AWS 用户体验定制 (UXC) 与 IAM 策略配合使用，以管理对 UXC API 操作的访问权限。

在使用 IAM 管理 AWS 用户体验自定义（用户体验自定义）的访问权限之前，请先了解有哪些 IAM 功能可用于用户体验定制。我们建议您通过 AWS 托管策略与用户体验自定义集成，有关更多信息，请参阅[的AWS 托管策略 AWS 管理控制台](security-iam-awsmanpol.md)。

在使用 IAM 管理对用户体验自定义的访问权限之前，请先了解有哪些 IAM 功能可用于用户体验定制。


| IAM 功能 | 用户体验定制支持 | 
| --- | --- | 
|  [基于身份的策略](#security_iam_service-with-iam-id-based-policies)  |   是  | 
|  基于资源的策略  |   否   | 
|  [策略操作](#security_iam_service-with-iam-id-based-policies-actions)  |   是  | 
|  策略资源  |   否   | 
|  策略条件密钥  |   否   | 
|  [临时凭证](#security_iam_service-with-iam-roles-tempcreds)  |   是  | 
|  跨服务主体权限  |   否   | 
|  服务关联角色  |   否   | 
|  服务角色  |   否   | 

要全面了解用户体验定制和其他 AWS 服务如何与大多数 IAM 功能配合使用，请参阅 IAM *用户指南中的与 IAM* [配合使用的AWS 服务](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)。

## 用于用户体验定制的基于身份的策略
<a name="security_iam_service-with-iam-id-based-policies"></a>

基于身份的策略是可附加到身份（如 IAM 用户、用户组或角色）的 JSON 权限策略文档。这些策略控制用户和角色可在何种条件下对哪些资源执行哪些操作。要了解如何创建基于身份的策略，请参阅《IAM 用户指南》**中的[使用客户管理型策略定义自定义 IAM 权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)。

通过使用 IAM 基于身份的策略，您可以指定允许或拒绝的操作和资源以及允许或拒绝操作的条件。要了解可在 JSON 策略中使用的所有元素，请参阅《IAM 用户指南》**中的 [IAM JSON 策略元素引用](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html)。

要查看用户体验自定义基于身份的策略示例，请参阅用户体验自定义的[基于身份的策略示例。 AWS](security_iam_id-based-policy-examples.md)

## 用户体验自定义的策略操作
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

管理员可以使用 AWS JSON 策略来指定谁有权访问什么。也就是说，哪个**主体**可以对什么**资源**执行**操作**，以及在什么**条件**下执行。

JSON 策略的 `Action` 元素描述可用于在策略中允许或拒绝访问的操作。在策略中包含操作以授予执行关联操作的权限。

要查看所有用户体验自定义操作，请参阅 [API 参考](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/APIReference/Welcome.html)。

用户体验自定义中的策略操作在操作前使用`uxc:`前缀（例如`uxc:GetAccountCustomizations`）。

要在单个语句中指定多项操作，请使用逗号将它们隔开：

```
"Action": [
      "uxc:GetAccountCustomizations",
      "uxc:ListServices"
         ]
```

要查看用户体验自定义基于身份的策略示例，请参阅用户体验自定义的[基于身份的策略示例。 AWS](security_iam_id-based-policy-examples.md)

## 用户体验定制的政策资源
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

用户体验自定义不支持策略资源。

## 使用临时凭证进行用户体验自定义
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

临时证书提供对 AWS 资源的短期访问权限，并且是在您使用联合身份或切换角色时自动创建的。 AWS 建议您动态生成临时证书，而不是使用长期访问密钥。有关更多信息，请参阅《IAM 用户指南》**中的 [IAM 中的临时安全凭证](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)和[使用 IAM 的。AWS 服务](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)

## AWS 用户体验疑难解答自定义身份和访问权限
<a name="security_iam_troubleshoot"></a>

使用以下信息来帮助您诊断和修复在使用用户体验自定义和 IAM 时可能遇到的常见问题。

如果您收到错误提示，指明您无权执行某个操作，则必须更新策略以允许执行该操作。

当 `mateojackson` IAM 用户尝试使用控制台查看有关虚构 `my-example-widget` 资源的详细信息，但不拥有虚构 `uxc:GetWidget` 权限时，会发生以下示例错误。

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: uxc:GetWidget on resource: my-example-widget because no identity-based policy allows the GetWidget action 
```

在此情况下，必须更新 `mateojackson` 用户的策略，以允许使用 `uxc:GetWidget` 操作访问 `my-example-widget` 资源。

如果您需要帮助，请联系您的 AWS 管理员。您的管理员是提供登录凭证的人。

在创建 IAM 用户访问密钥后，您可以随时查看您的访问密钥 ID。但是，您无法再查看您的秘密访问密钥。如果您丢失了私有密钥，则必须创建一个新的访问密钥对。

访问密钥包含两部分：访问密钥 ID（例如 `AKIAIOSFODNN7EXAMPLE`）和秘密访问密钥（例如 `wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY`）。与用户名和密码一样，您必须同时使用访问密钥 ID 和秘密访问密钥对请求执行身份验证。像对用户名和密码一样，安全地管理访问密钥。

**重要**  
请不要向第三方提供访问密钥，即便是为了帮助[找到您的规范用户 ID](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-identifiers.html#FindCanonicalId) 也不行。通过这样做，您可以授予他人永久访问您的权限 AWS 账户。

当您创建访问密钥对时，系统会提示您将访问密钥 ID 和秘密访问密钥保存在一个安全位置。秘密访问密钥仅在您创建它时可用。如果丢失了您的秘密访问密钥，您必须为 IAM 用户添加新的访问密钥。您最多可拥有两个访问密钥。如果您已有两个密钥，则必须删除一个密钥对，然后再创建新的密钥。要查看说明，请参阅 *IAM 用户指南*中的[管理访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey)。

要允许其他人访问用户体验自定义，您必须向需要访问的人员或应用程序授予权限。如果使用 AWS IAM Identity Center 管理人员和应用程序，则可以向用户或组分配权限集来定义其访问权限级别。权限集会自动创建 IAM 策略并将其分配给与人员或应用程序关联的 IAM 角色。有关更多信息，请参阅《AWS IAM Identity Center 用户指南》**中的[权限集](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)。

如果未使用 IAM Identity Center，则必须为需要访问的人员或应用程序创建 IAM 实体（用户或角色）。然后，您必须将策略附加到该实体，以便在用户体验自定义中向他们授予正确权限。授予权限后，向用户或应用程序开发人员提供凭证。他们将使用这些凭证访问 AWS。要了解有关创建 IAM 用户、组、策略和权限的更多信息，请参阅《IAM 用户指南》**中的 [IAM 身份](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html)和 [IAM 中的策略和权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)。