get_resource_policy

SecretsManager.Client.get_resource_policy(**kwargs)

Retrieves the JSON text of the resource-based policy document attached to the secret. For more information about permissions policies attached to a secret, see Permissions policies attached to a secret.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetResourcePolicy . For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

See also: AWS API Documentation

Request Syntax

response = client.get_resource_policy(
    SecretId='string'
)
Parameters
SecretId (string) --

[REQUIRED]

The ARN or name of the secret to retrieve the attached resource-based policy for.

For an ARN, we recommend that you specify a complete ARN rather than a partial ARN. See Finding a secret from a partial ARN.

Return type
dict
Returns
Response Syntax
{
    'ARN': 'string',
    'Name': 'string',
    'ResourcePolicy': 'string'
}

Response Structure

  • (dict) --
    • ARN (string) --

      The ARN of the secret that the resource-based policy was retrieved for.

    • Name (string) --

      The name of the secret that the resource-based policy was retrieved for.

    • ResourcePolicy (string) --

      A JSON-formatted string that contains the permissions policy attached to the secret. For more information about permissions policies, see Authentication and access control for Secrets Manager.

Exceptions

  • SecretsManager.Client.exceptions.ResourceNotFoundException
  • SecretsManager.Client.exceptions.InternalServiceError
  • SecretsManager.Client.exceptions.InvalidRequestException
  • SecretsManager.Client.exceptions.InvalidParameterException

Examples

The following example shows how to retrieve the resource-based policy that is attached to a secret.

response = client.get_resource_policy(
    SecretId='MyTestDatabaseSecret',
)

print(response)

Expected Output:

{
    'ARN': 'arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3',
    'Name': 'MyTestDatabaseSecret',
    'ResourcePolicy': '{\n"Version":"2012-10-17",\n"Statement":[{\n"Effect":"Allow",\n"Principal":{\n"AWS":"arn:aws:iam::123456789012:root"\n},\n"Action":"secretsmanager:GetSecretValue",\n"Resource":"*"\n}]\n}',
    'ResponseMetadata': {
        '...': '...',
    },
}