Skip to content

IAM  >  Operations  >  delete_policy

delete_policy

Operation

delete_policy async

delete_policy(input: DeletePolicyInput, plugins: list[Plugin] | None = None) -> DeletePolicyOutput

Deletes the specified managed policy.

Before you can delete a managed policy, you must first detach the policy from all users, groups, and roles that it is attached to. In addition, you must delete all the policy's versions. The following steps describe the process for deleting a managed policy:

  • Detach the policy from all users, groups, and roles that the policy is attached to, using DetachUserPolicy, DetachGroupPolicy, or DetachRolePolicy. To list all the users, groups, and roles that a policy is attached to, use ListEntitiesForPolicy.

  • Delete all versions of the policy using DeletePolicyVersion. To list the policy's versions, use ListPolicyVersions. You cannot use DeletePolicyVersion to delete the version that is marked as the default version. You delete the policy's default version in the next step of the process.

  • Delete the policy (this automatically deletes the policy's default version) using this operation.

For information about managed policies, see Managed policies and inline policies in the IAM User Guide.

Parameters:

Name Type Description Default
input DeletePolicyInput

An instance of DeletePolicyInput.

required
plugins list[Plugin] | None

A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations.

None

Returns:

Type Description
DeletePolicyOutput

An instance of DeletePolicyOutput.

Input

DeletePolicyInput dataclass

Bases: _SerdeShape

Dataclass for DeletePolicyInput structure.

Attributes

policy_arn class-attribute instance-attribute
policy_arn: str | None = ...

The Amazon Resource Name (ARN) of the IAM policy you want to delete.

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

Output

DeletePolicyOutput dataclass

Bases: _SerdeShape

Dataclass for DeletePolicyOutput structure.

Attributes

response_metadata class-attribute instance-attribute
response_metadata: ResponseMetadata = ...

Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.