PutProjectPolicy
Note
This operation applies only to Amazon Rekognition Custom Labels.
Attaches a project policy to a Amazon Rekognition Custom Labels project in a trusting AWS account. A project policy specifies that a trusted AWS account can copy a model version from a trusting AWS account to a project in the trusted AWS account. To copy a model version you use the CopyProjectVersion operation. Only applies to Custom Labels projects.
For more information about the format of a project policy document, see Attaching a project policy (SDK).
The response from PutProjectPolicy
is a revision ID for the project policy.
You can attach multiple project policies to a project. You can also update an existing
project policy by specifying the policy revision ID of the existing policy.
To remove a project policy from a project, call DeleteProjectPolicy. To get a list of project policies attached to a project, call ListProjectPolicies.
You copy a model version by calling CopyProjectVersion.
This operation requires permissions to perform the rekognition:PutProjectPolicy
action.
Request Syntax
{
"PolicyDocument": "string
",
"PolicyName": "string
",
"PolicyRevisionId": "string
",
"ProjectArn": "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.
- PolicyDocument
-
A resource policy to add to the model. The policy is a JSON structure that contains one or more statements that define the policy. The policy must follow the IAM syntax. For more information about the contents of a JSON policy document, see IAM JSON policy reference.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2000.
Pattern:
[\u0009\u000A\u000D\u0020-\u00FF]+
Required: Yes
- PolicyName
-
A name for the policy.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9_.\-]+
Required: Yes
- PolicyRevisionId
-
The revision ID for the Project Policy. Each time you modify a policy, Amazon Rekognition Custom Labels generates and assigns a new
PolicyRevisionId
and then deletes the previous version of the policy.Type: String
Length Constraints: Maximum length of 64.
Pattern:
[0-9A-Fa-f]+
Required: No
- ProjectArn
-
The Amazon Resource Name (ARN) of the project that the project policy is attached to.
Type: String
Length Constraints: Minimum length of 20. Maximum length of 2048.
Pattern:
(^arn:[a-z\d-]+:rekognition:[a-z\d-]+:\d{12}:project\/[a-zA-Z0-9_.\-]{1,255}\/[0-9]+$)
Required: Yes
Response Syntax
{
"PolicyRevisionId": "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.
- PolicyRevisionId
-
The ID of the project policy.
Type: String
Length Constraints: Maximum length of 64.
Pattern:
[0-9A-Fa-f]+
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
You are not authorized to perform the action.
HTTP Status Code: 400
- InternalServerError
-
Amazon Rekognition experienced a service issue. Try your call again.
HTTP Status Code: 500
- InvalidParameterException
-
Input parameter violated a constraint. Validate your parameter before calling the API operation again.
HTTP Status Code: 400
- InvalidPolicyRevisionIdException
-
The supplied revision id for the project policy is invalid.
HTTP Status Code: 400
- LimitExceededException
-
An Amazon Rekognition service limit was exceeded. For example, if you start too many jobs concurrently, subsequent calls to start operations (ex:
StartLabelDetection
) will raise aLimitExceededException
exception (HTTP status code: 400) until the number of concurrently running jobs is below the Amazon Rekognition service limit.HTTP Status Code: 400
- MalformedPolicyDocumentException
-
The format of the project policy document that you supplied to
PutProjectPolicy
is incorrect.HTTP Status Code: 400
- ProvisionedThroughputExceededException
-
The number of requests exceeded your throughput limit. If you want to increase this limit, contact Amazon Rekognition.
HTTP Status Code: 400
- ResourceAlreadyExistsException
-
A resource with the specified ID already exists.
HTTP Status Code: 400
- ResourceNotFoundException
-
The resource specified in the request cannot be found.
HTTP Status Code: 400
- ServiceQuotaExceededException
-
The size of the resource exceeds the allowed limit. For more information, see Guidelines and quotas in Amazon Rekognition.
HTTP Status Code: 400
- ThrottlingException
-
Amazon Rekognition is temporarily unable to process the request. Try your call again.
HTTP Status Code: 500
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: