get_policy

Lambda.Client.get_policy(**kwargs)

Returns the resource-based IAM policy for a function, version, or alias.

See also: AWS API Documentation

Request Syntax

response = client.get_policy(
    FunctionName='string',
    Qualifier='string'
)
Parameters
  • FunctionName (string) --

    [REQUIRED]

    The name of the Lambda function, version, or alias.

    Name formats
    • Function namemy-function (name-only), my-function:v1 (with alias).
    • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function .
    • Partial ARN123456789012:function:my-function .

    You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

  • Qualifier (string) -- Specify a version or alias to get the policy for that resource.
Return type

dict

Returns

Response Syntax

{
    'Policy': 'string',
    'RevisionId': 'string'
}

Response Structure

  • (dict) --

    • Policy (string) --

      The resource-based policy.

    • RevisionId (string) --

      A unique identifier for the current revision of the policy.

Exceptions

  • Lambda.Client.exceptions.ServiceException
  • Lambda.Client.exceptions.ResourceNotFoundException
  • Lambda.Client.exceptions.TooManyRequestsException
  • Lambda.Client.exceptions.InvalidParameterValueException

Examples

The following example returns the resource-based policy for version 1 of a Lambda function named my-function.

response = client.get_policy(
    FunctionName='my-function',
    Qualifier='1',
)

print(response)

Expected Output:

{
    'Policy': '{"Version":"2012-10-17","Id":"default","Statement":[{"Sid":"xaccount","Effect":"Allow","Principal":{"AWS":"arn:aws:iam::123456789012:root"},"Action":"lambda:InvokeFunction","Resource":"arn:aws:lambda:us-east-2:123456789012:function:my-function:1"}]}',
    'RevisionId': '4843f2f6-7c59-4fda-b484-afd0bc0e22b8',
    'ResponseMetadata': {
        '...': '...',
    },
}