

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

# 对 Amazon Security Hub CSPM 身份和访问进行故障排除
<a name="security_iam_troubleshoot"></a>

使用以下信息来帮助您诊断和修复在使用 Amazon Security Hub CSPM 和 IAM 时可能遇到的常见问题。

**Topics**
+ [我无权在 Security Hub CSPM 中执行操作](#security_iam_troubleshoot-no-permissions)
+ [我无权执行 iam：PassRole](#security_iam_troubleshoot-passrole)
+ [我想以编程方式访问 Security Hub CSPM](#security_iam_troubleshoot-access-keys)
+ [我是一名管理员，想允许其他人访问 Security Hub CSPM](#security_iam_troubleshoot-admin-delegate)
+ [我想允许我以外的人访问我 Amazon Web Services 账户 的 Security Hub CSPM 资源](#security_iam_troubleshoot-cross-account-access)

## 我无权在 Security Hub CSPM 中执行操作
<a name="security_iam_troubleshoot-no-permissions"></a>

如果 Amazon Web Services 管理控制台 告诉您您无权执行某项操作，则必须联系管理员寻求帮助。管理员是向您提供登录凭证的人。

当用户`mateojackson`尝试使用控制台查看有关某的详细信息{{widget}}但没有`securityhub:{{GetWidget}}`权限时，就会出现以下示例错误。

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: securityhub:{{GetWidget}} on resource: {{my-example-widget}}
```

在这种情况下，Mateo 请求他的管理员更新其策略，以允许他使用 `securityhub:{{GetWidget}}` 操作访问 `{{my-example-widget}}` 资源。

## 我无权执行 iam：PassRole
<a name="security_iam_troubleshoot-passrole"></a>

如果您收到一个错误，表明您无权执行 `iam:PassRole` 操作，则必须更新策略以允许您将角色传递给 Security Hub。

有些 Amazon Web Services 服务 允许您将现有角色传递给该服务，而不是创建新的服务角色或服务相关角色。为此，您必须具有将角色传递到服务的权限。

当名为 `marymajor` 的 IAM 用户尝试使用控制台在 Security Hub 中执行操作时，会发生以下示例错误。但是，服务必须具有服务角色所授予的权限才可执行此操作。Mary 不具有将角色传递到服务的权限。

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

在这种情况下，必须更新 Mary 的策略以允许她执行 `iam:PassRole` 操作。

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

## 我想以编程方式访问 Security Hub CSPM
<a name="security_iam_troubleshoot-access-keys"></a>

如果用户想在 Amazon 外部进行交互，则需要编程访问权限 Amazon Web Services 管理控制台。 Amazon APIs 和 Amazon Command Line Interface 需要访问密钥。可能的话，创建临时凭证，该凭证由一个访问密钥 ID、一个秘密访问密钥和一个指示凭证何时到期的安全令牌组成。

要向用户授予编程式访问权限，请选择以下选项之一。


****  

| 哪个用户需要编程式访问权限？ | 目的 | 方式 | 
| --- | --- | --- | 
| IAM | 使用短期证书签署对 Amazon CLI 或的编程请求 Amazon APIs（直接或使用 Amazon SDKs）。 | 按照 IAM 用户指南中的将[临时证书与 Amazon 资源配合使用](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_credentials_temp_use-resources.html)中的说明进行操作。 | 
| IAM | （不推荐使用）使用长期证书签署对 Amazon CLI 或的编程请求 Amazon APIs（直接或使用 Amazon SDKs）。 | 按照《IAM 用户指南》中[管理 IAM 用户的访问密钥](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_credentials_access-keys.html)中的说明进行操作。 | 

## 我是一名管理员，想允许其他人访问 Security Hub CSPM
<a name="security_iam_troubleshoot-admin-delegate"></a>

要提供访问权限，请为您的用户、组或角色添加权限：
+ 通过身份提供者在 IAM 中托管的用户：

  创建适用于身份联合验证的角色。按照《IAM 用户指南》**中[针对第三方身份提供者创建角色（联合身份验证）](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_roles_create_for-idp.html)的说明进行操作。
+ IAM 用户：
  + 创建您的用户可以担任的角色。按照《IAM 用户指南》**中[为 IAM 用户创建角色](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_roles_create_for-user.html)的说明进行操作。
  + （不推荐使用）将策略直接附加到用户或将用户添加到用户组。按照《IAM 用户指南》**中[向用户添加权限（控制台）](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)中的说明进行操作。

## 我想允许我以外的人访问我 Amazon Web Services 账户 的 Security Hub CSPM 资源
<a name="security_iam_troubleshoot-cross-account-access"></a>

您可以创建一个角色，以便其他账户中的用户或您组织外的人员可以使用该角色来访问您的资源。您可以指定谁值得信赖，可以代入角色。对于支持基于资源的策略或访问控制列表 (ACLs) 的服务，您可以使用这些策略向人们授予访问您的资源的权限。

要了解更多信息，请参阅以下内容：
+ 要了解 Security Hub 是否支持这些功能，请参阅 [Security Hub 如何与 IAM 协同工作](security_iam_service-with-iam.md)。
+ 要了解如何提供对您拥有的资源的访问权限 Amazon Web Services 账户 ，请参阅 [IAM 用户*指南中的向您拥有 Amazon Web Services 账户 的另一个 IAM 用户*提供访问](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html)权限。
+ 要了解如何向第三方提供对您的资源的访问[权限 Amazon Web Services 账户，请参阅 *IAM 用户指南*中的向第三方提供](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)访问权限。 Amazon Web Services 账户 
+ 要了解如何通过身份联合验证提供访问权限，请参阅《IAM 用户指南》**中的[为经过外部身份验证的用户（身份联合验证）提供访问权限](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html)。
+ 要了解使用角色和基于资源的策略进行跨账户访问之间的差别，请参阅《IAM 用户指南》**中的 [IAM 中的跨账户资源访问](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html)。