调用 EnableAWSServiceAccess 操作时:您指定了无法识别的服务主体
when calling the EnableAWSServiceAccess operation: You specified an unrecognized service principal
C:\>aws organizations enable-aws-service-access --service-principal cloudformation.amazonaws.com
调用 EnableAWSServiceAccess 操作时发生错误 (InvalidInputException):您指定了无法识别的服务主体。
C:\>aws organizations enable-aws-service-access --service-principal "cloudformation.amazonaws.com"
调用 EnableAWSServiceAccess 操作时发生错误 (InvalidInputException):您指定了无法识别的服务主体。
C:\>aws organizations enable-aws-service-access --service-principal 'cloudformation.amazonaws.com'
调用 EnableAWSServiceAccess 操作时发生错误 (InvalidInputException):您提供的值与所需模式不匹配。
知道哪里出了问题吗?
根据文档 here
--服务主体(字符串)
您要为其启用与组织集成的 AWS 服务的服务主体名称。这通常采用 URL 的形式,例如 service-abbreviation.amazonaws.com
.
我试过
"s3.amazonaws.com"
"ec2.amazonaws.com"
"elasticbeanstalk.amazonaws.com"
"autoscaling.amazonaws.com"
作为服务主体。但是都报同样的错误。
虽然它在控制台中有效。
AWS 控制台 -> CloudFormation -> StackSets -> 启用可信访问。
When you enable integration, you allow the specified service to create a service-linked role in all the accounts in your organization. This allows the service to perform operations on your behalf in your organization and its accounts.
我认为它失败的原因是 CloudFormation 确实支持服务相关角色。您可以在 tablehttps://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html.
中验证
它也适用于控制台,因为您是为 StackSets
而不是 CloudFormation
本身启用它。 如 docs 中所列,CloudFormation 不支持您的组织 的可信访问。只有 AWS CloudFormation Stacksets
支持它。
而且它只有效 though console:
You can enable trusted access using either the AWS CloudFormation console or the AWS Organizations console.
您不能使用 CLI 或 SDK 执行此操作。
您可以使用以下方式
aws organizations enable-aws-service-access --service-principal member.org.stacksets.cloudformation.amazonaws.com
C:\>aws organizations enable-aws-service-access --service-principal cloudformation.amazonaws.com
调用 EnableAWSServiceAccess 操作时发生错误 (InvalidInputException):您指定了无法识别的服务主体。
C:\>aws organizations enable-aws-service-access --service-principal "cloudformation.amazonaws.com"
调用 EnableAWSServiceAccess 操作时发生错误 (InvalidInputException):您指定了无法识别的服务主体。
C:\>aws organizations enable-aws-service-access --service-principal 'cloudformation.amazonaws.com'
调用 EnableAWSServiceAccess 操作时发生错误 (InvalidInputException):您提供的值与所需模式不匹配。
知道哪里出了问题吗?
根据文档 here
--服务主体(字符串)
您要为其启用与组织集成的 AWS 服务的服务主体名称。这通常采用 URL 的形式,例如 service-abbreviation.amazonaws.com
.
我试过
"s3.amazonaws.com"
"ec2.amazonaws.com"
"elasticbeanstalk.amazonaws.com"
"autoscaling.amazonaws.com"
作为服务主体。但是都报同样的错误。
虽然它在控制台中有效。 AWS 控制台 -> CloudFormation -> StackSets -> 启用可信访问。
When you enable integration, you allow the specified service to create a service-linked role in all the accounts in your organization. This allows the service to perform operations on your behalf in your organization and its accounts.
我认为它失败的原因是 CloudFormation 确实支持服务相关角色。您可以在 tablehttps://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html.
中验证它也适用于控制台,因为您是为 StackSets
而不是 CloudFormation
本身启用它。 如 docs 中所列,CloudFormation 不支持您的组织 的可信访问。只有 AWS CloudFormation Stacksets
支持它。
而且它只有效 though console:
You can enable trusted access using either the AWS CloudFormation console or the AWS Organizations console.
您不能使用 CLI 或 SDK 执行此操作。
您可以使用以下方式
aws organizations enable-aws-service-access --service-principal member.org.stacksets.cloudformation.amazonaws.com