ListPolicies
Lists all the managed policies that are available in your AWS account, including your own customer-defined managed policies and all AWS managed policies.
You can filter the list of policies that is returned using the optional
OnlyAttached
, Scope
, and PathPrefix
parameters. For example, to list only the customer managed policies in your AWS
account, set Scope
to Local
. To list only AWS managed
policies, set Scope
to AWS
.
You can paginate the results using the MaxItems
and Marker
parameters.
For more information about managed policies, see Managed policies and inline policies in the IAM User Guide.
Note
IAM resource-listing operations return a subset of the available attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a customer manged policy, see GetPolicy.
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
- Marker
-
Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the
Marker
element in the response that you received to indicate where the next call should start.Type: String
Length Constraints: Minimum length of 1.
Pattern:
[\u0020-\u00FF]+
Required: No
- MaxItems
-
Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the
IsTruncated
response element istrue
.If you do not include this parameter, the number of items defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the
IsTruncated
response element returnstrue
, andMarker
contains a value to include in the subsequent call that tells the service where to continue from.Type: Integer
Valid Range: Minimum value of 1. Maximum value of 1000.
Required: No
- OnlyAttached
-
A flag to filter the results to only the attached policies.
When
OnlyAttached
istrue
, the returned list contains only the policies that are attached to an IAM user, group, or role. WhenOnlyAttached
isfalse
, or when the parameter is not included, all policies are returned.Type: Boolean
Required: No
- PathPrefix
-
The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (through its regex pattern
) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! ( \u0021
) through the DEL character (\u007F
), including most punctuation characters, digits, and upper and lowercased letters.Type: String
Length Constraints: Minimum length of 1. Maximum length of 512.
Pattern:
((/[A-Za-z0-9\.,\+@=_-]+)*)/
Required: No
- PolicyUsageFilter
-
The policy usage method to use for filtering the results.
To list only permissions policies, set
PolicyUsageFilter
toPermissionsPolicy
. To list only the policies used to set permissions boundaries, set the value toPermissionsBoundary
.This parameter is optional. If it is not included, all policies are returned.
Type: String
Valid Values:
PermissionsPolicy | PermissionsBoundary
Required: No
- Scope
-
The scope to use for filtering the results.
To list only AWS managed policies, set
Scope
toAWS
. To list only the customer managed policies in your AWS account, setScope
toLocal
.This parameter is optional. If it is not included, or if it is set to
All
, all policies are returned.Type: String
Valid Values:
All | AWS | Local
Required: No
Response Elements
The following elements are returned by the service.
- IsTruncated
-
A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the
Marker
request parameter to retrieve more items. Note that IAM might return fewer than theMaxItems
number of results even when there are more results available. We recommend that you checkIsTruncated
after every call to ensure that you receive all your results.Type: Boolean
- Marker
-
When
IsTruncated
istrue
, this element is present and contains the value to use for theMarker
parameter in a subsequent pagination request.Type: String
- Policies.member.N
-
A list of policies.
Type: Array of Policy objects
Errors
For information about the errors that are common to all actions, see Common Errors.
- ServiceFailure
-
The request processing has failed because of an unknown error, exception or failure.
HTTP Status Code: 500
Examples
Example
This example illustrates one usage of ListPolicies.
Sample Request
https://iam.amazonaws.com/?Action=ListPolicies
&Version=2010-05-08
&AUTHPARAMS
Sample Response
<ListPoliciesResponse xmlns="https://iam.amazonaws.com/doc/2010-05-08/">
<ListPoliciesResult>
<IsTruncated>true</IsTruncated>
<Marker>EXAMPLEkakv9BCuUNFDtxWSyfzetYwEx2ADc8dnzfvERF5S6YMvXKx41t6gCl/eeaCX3Jo94/bKqezEAg8TEVS
99EKFLxm3jtbpl25FDWEXAMPLE
</Marker>
<Policies>
<member>
<Arn>arn:aws:iam::123456789012:policy/ExamplePolicy</Arn>
<AttachmentCount>2</AttachmentCount>
<CreateDate>2014-09-15T17:36:14Z</CreateDate>
<DefaultVersionId>v1</DefaultVersionId>
<IsAttachable>true</IsAttachable>
<Path>/</Path>
<PermissionsBoundaryUsageCount>0</PermissionsBoundaryUsageCount>
<PolicyId>AGPACKCEVSQ6C2EXAMPLE</PolicyId>
<PolicyName>ExamplePolicy</PolicyName>
<UpdateDate>2014-09-15T20:31:47Z</UpdateDate>
</member>
<member>
<Arn>arn:aws:iam::aws:policy/PowerUserAccess</Arn>
<AttachmentCount>0</AttachmentCount>
<CreateDate>2014-08-21T20:25:01Z</CreateDate>
<DefaultVersionId>v1</DefaultVersionId>
<IsAttachable>true</IsAttachable>
<Path>/</Path>
<PermissionsBoundaryUsageCount>0</PermissionsBoundaryUsageCount>
<PolicyId>AGPACKCEVSQ6C2EXAMPLE</PolicyId>
<PolicyName>PowerUserAccess</PolicyName>
<UpdateDate>2014-08-21T20:25:01Z</UpdateDate>
</member>
<member>
<Arn>arn:aws:iam::aws:policy/AdministratorAccess</Arn>
<AttachmentCount>1</AttachmentCount>
<CreateDate>2014-08-21T20:11:25Z</CreateDate>
<DefaultVersionId>v1</DefaultVersionId>
<IsAttachable>true</IsAttachable>
<Path>/</Path>
<PermissionsBoundaryUsageCount>1</PermissionsBoundaryUsageCount>
<PolicyId>AGPACKCEVSQ6C2EXAMPLE</PolicyId>
<PolicyName>AdministratorAccess</PolicyName>
<UpdateDate>2014-08-21T20:11:25Z</UpdateDate>
</member>
<member>
<Arn>arn:aws:iam::aws:policy/ReadOnlyAccess</Arn>
<AttachmentCount>6</AttachmentCount>
<CreateDate>2014-08-21T20:31:44Z</CreateDate>
<DefaultVersionId>v1</DefaultVersionId>
<IsAttachable>true</IsAttachable>
<Path>/</Path>
<PermissionsBoundaryUsageCount>2</PermissionsBoundaryUsageCount>
<PolicyId>AGPACKCEVSQ6C2EXAMPLE</PolicyId>
<PolicyName>ReadOnlyAccess</PolicyName>
<UpdateDate>2014-08-21T20:31:44Z</UpdateDate>
</member>
</Policies>
</ListPoliciesResult>
<ResponseMetadata>
<RequestId>6207e832-3eb7-11e4-9d0d-6f969EXAMPLE</RequestId>
</ResponseMetadata>
</ListPoliciesResponse>
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: