CreateEnvironmentAccountConnection
Create an environment account connection in an environment account so that environment infrastructure resources can be provisioned in the environment account from a management account.
An environment account connection is a secure bi-directional connection between a management account and an environment account that maintains authorization and permissions. For more information, see Environment account connections in the AWS Proton User guide.
Request Syntax
{
"clientToken": "string
",
"codebuildRoleArn": "string
",
"componentRoleArn": "string
",
"environmentName": "string
",
"managementAccountId": "string
",
"roleArn": "string
",
"tags": [
{
"key": "string
",
"value": "string
"
}
]
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- clientToken
-
When included, if two identical requests are made with the same client token, AWS Proton returns the environment account connection that the first request created.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 64.
Pattern:
^[!-~]*$
Required: No
- codebuildRoleArn
-
The Amazon Resource Name (ARN) of an IAM service role in the environment account. AWS Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
^arn:(aws|aws-cn|aws-us-gov):iam::\d{12}:role/([\w+=,.@-]{1,512}[/:])*([\w+=,.@-]{1,64})$
Required: No
- componentRoleArn
-
The Amazon Resource Name (ARN) of the IAM service role that AWS Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.
You must specify
componentRoleArn
to allow directly defined components to be associated with any environments running in this account.For more information about components, see AWS Proton components in the AWS Proton User Guide.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
^arn:(aws|aws-cn|aws-us-gov):iam::\d{12}:role/([\w+=,.@-]{1,512}[/:])*([\w+=,.@-]{1,64})$
Required: No
- environmentName
-
The name of the AWS Proton environment that's created in the associated management account.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
^[0-9A-Za-z]+[0-9A-Za-z_\-]*$
Required: Yes
- managementAccountId
-
The ID of the management account that accepts or rejects the environment account connection. You create and manage the AWS Proton environment in this account. If the management account accepts the environment account connection, AWS Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.
Type: String
Pattern:
^\d{12}$
Required: Yes
- roleArn
-
The Amazon Resource Name (ARN) of the IAM service role that's created in the environment account. AWS Proton uses this role to provision infrastructure resources in the associated environment account.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
^arn:(aws|aws-cn|aws-us-gov):iam::\d{12}:role/([\w+=,.@-]{1,512}[/:])*([\w+=,.@-]{1,64})$
Required: No
-
An optional list of metadata items that you can associate with the AWS Proton environment account connection. A tag is a key-value pair.
For more information, see AWS Proton resources and tagging in the AWS Proton User Guide.
Type: Array of Tag objects
Array Members: Minimum number of 0 items. Maximum number of 50 items.
Required: No
Response Syntax
{
"environmentAccountConnection": {
"arn": "string",
"codebuildRoleArn": "string",
"componentRoleArn": "string",
"environmentAccountId": "string",
"environmentName": "string",
"id": "string",
"lastModifiedAt": number,
"managementAccountId": "string",
"requestedAt": number,
"roleArn": "string",
"status": "string"
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- environmentAccountConnection
-
The environment account connection detail data that's returned by AWS Proton.
Type: EnvironmentAccountConnection object
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
There isn't sufficient access for performing this action.
HTTP Status Code: 400
- ConflictException
-
The request couldn't be made due to a conflicting operation or resource.
HTTP Status Code: 400
- InternalServerException
-
The request failed to register with the service.
HTTP Status Code: 500
- ServiceQuotaExceededException
-
A quota was exceeded. For more information, see AWS Proton Quotas in the AWS Proton User Guide.
HTTP Status Code: 400
- ThrottlingException
-
The request was denied due to request throttling.
HTTP Status Code: 400
- ValidationException
-
The input is invalid or an out-of-range value was supplied for the input parameter.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: