

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

# 故障排除 AWS CodeStar 通知、 AWS CodeConnections 身份和访问权限
<a name="security_iam_troubleshoot"></a>

使用以下信息可帮助您诊断和修复在使用通知和 IAM 时可能遇到的常见问题。

**Topics**
+ [

## 我是管理员并希望允许其他人访问通知
](#security_iam_troubleshoot-admin-delegate)
+ [

## 我创建了一个 Amazon SNS 主题并将其添加为通知规则目标，但是我没有收到有关事件的电子邮件
](#security_iam_troubleshoot-sns)
+ [

## 我想允许 AWS 账户以外的其他人访问我的 AWS CodeStar 通知和 AWS CodeConnections 资源
](#security_iam_troubleshoot-cross-account-access)

## 我是管理员并希望允许其他人访问通知
<a name="security_iam_troubleshoot-admin-delegate"></a>

要允许其他人访问 AWS CodeStar 通知和 AWS CodeConnections，您必须向需要访问的人员或应用程序授予权限。如果使用 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 CodeStar 通知和中向他们授予正确的权限 AWS CodeConnections。授予权限后，向用户或应用程序开发人员提供凭证。他们将使用这些凭证访问 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)。

有关 AWS CodeStar 通知的特定信息，请参阅[AWS CodeStar 通知的权限和示例](security_iam_id-based-policy-examples-notifications.md)。

## 我创建了一个 Amazon SNS 主题并将其添加为通知规则目标，但是我没有收到有关事件的电子邮件
<a name="security_iam_troubleshoot-sns"></a>

为了接收有关事件的通知，您必须订阅一个有效的 Amazon SNS 主题作为通知规则的目标，并且您的电子邮件地址也必须订阅 Amazon SNS 主题。要排查 Amazon SNS 主题的问题，请检查以下内容：
+ 确保 Amazon SNS 主题与通知规则位于同一 AWS 区域。
+ 检查以确保您的电子邮件别名已订阅到正确的主题，并且您已确认订阅。有关更多信息，请参阅[将终端节点订阅到 Amazon SNS 主题](https://docs.aws.amazon.com/sns/latest/dg/sns-tutorial-create-subscribe-endpoint-to-topic.html)。
+ 确认已修改主题策略以允许 AWS CodeStar 通知向该主题推送通知。该主题策略应包含类似于以下内容的声明：

  ```
  {
      "Sid": "AWSCodeStarNotifications_publish",
      "Effect": "Allow",
      "Principal": {
          "Service": [
              "codestar-notifications.amazonaws.com"
          ]
      },
      "Action": "SNS:Publish",
      "Resource": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopicName",
      "Condition": {
          "StringEquals": {
              "aws:SourceAccount": "123456789012"
          }
      }
  }
  ```

  有关更多信息，请参阅 [设置](setting-up.md)。

## 我想允许 AWS 账户以外的其他人访问我的 AWS CodeStar 通知和 AWS CodeConnections 资源
<a name="security_iam_troubleshoot-cross-account-access"></a>

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

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