Skip to content

Commit cffa711

Browse files
author
awstools
committed
feat(client-iam): Updated IAM ServiceSpecificCredential support to include expiration, API Key output format instead of username and password for services that will support API keys, and the ability to list credentials for all users in the account for a given service configuration.
1 parent 8587fbb commit cffa711

File tree

77 files changed

+828
-575
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+828
-575
lines changed

clients/client-iam/src/commands/ChangePasswordCommand.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,11 @@ export interface ChangePasswordCommandOutput extends __MetadataBearer {}
3232
* can be performed using the CLI, the Amazon Web Services API, or the <b>My
3333
* Security Credentials</b> page in the Amazon Web Services Management Console. The Amazon Web Services account root user password is
3434
* not affected by this operation.</p>
35-
* <p>Use <a>UpdateLoginProfile</a> to use the CLI, the Amazon Web Services API, or the
36-
* <b>Users</b> page in the IAM console to change the
37-
* password for any IAM user. For more information about modifying passwords, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html">Managing
38-
* passwords</a> in the <i>IAM User Guide</i>.</p>
35+
* <p>Use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateLoginProfile.html">UpdateLoginProfile</a>
36+
* to use the CLI, the Amazon Web Services API, or the <b>Users</b> page in
37+
* the IAM console to change the password for any IAM user. For more information about
38+
* modifying passwords, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html">Managing passwords</a> in the
39+
* <i>IAM User Guide</i>.</p>
3940
* @example
4041
* Use a bare-bones client and the command you need to make an API call.
4142
* ```javascript

clients/client-iam/src/commands/CreateAccessKeyCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ export interface CreateAccessKeyCommandOutput extends CreateAccessKeyResponse, _
6161
* // AccessKey: { // AccessKey
6262
* // UserName: "STRING_VALUE", // required
6363
* // AccessKeyId: "STRING_VALUE", // required
64-
* // Status: "Active" || "Inactive", // required
64+
* // Status: "Active" || "Inactive" || "Expired", // required
6565
* // SecretAccessKey: "STRING_VALUE", // required
6666
* // CreateDate: new Date("TIMESTAMP"),
6767
* // },

clients/client-iam/src/commands/CreateLoginProfileCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export interface CreateLoginProfileCommandOutput extends CreateLoginProfileRespo
3535
* <p>Creates a password for the specified IAM user. A password allows an IAM user to
3636
* access Amazon Web Services services through the Amazon Web Services Management Console.</p>
3737
* <p>You can use the CLI, the Amazon Web Services API, or the <b>Users</b>
38-
* page in the IAM console to create a password for any IAM user. Use <a>ChangePassword</a> to update your own existing password in the <b>My Security Credentials</b> page in the Amazon Web Services Management Console.</p>
38+
* page in the IAM console to create a password for any IAM user. Use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ChangePassword.html">ChangePassword</a> to update your own existing password in the <b>My Security Credentials</b> page in the Amazon Web Services Management Console.</p>
3939
* <p>For more information about managing passwords, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html">Managing passwords</a> in the
4040
* <i>IAM User Guide</i>.</p>
4141
* @example

clients/client-iam/src/commands/CreateOpenIDConnectProviderCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ export interface CreateOpenIDConnectProviderCommandOutput
6868
* </note>
6969
* <note>
7070
* <p>The trust for the OIDC provider is derived from the IAM provider that this
71-
* operation creates. Therefore, it is best to limit access to the <a>CreateOpenIDConnectProvider</a> operation to highly privileged
71+
* operation creates. Therefore, it is best to limit access to the <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateOpenIDConnectProvider.html">CreateOpenIDConnectProvider</a> operation to highly privileged
7272
* users.</p>
7373
* </note>
7474
* @example

clients/client-iam/src/commands/CreatePolicyVersionCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export interface CreatePolicyVersionCommandOutput extends CreatePolicyVersionRes
3030
/**
3131
* <p>Creates a new version of the specified managed policy. To update a managed policy, you
3232
* create a new policy version. A managed policy can have up to five versions. If the
33-
* policy has five versions, you must delete an existing version using <a>DeletePolicyVersion</a> before you create a new version.</p>
33+
* policy has five versions, you must delete an existing version using <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicyVersion.html">DeletePolicyVersion</a> before you create a new version.</p>
3434
* <p>Optionally, you can set the new version as the policy's default version. The default
3535
* version is the version that is in effect for the IAM users, groups, and roles to which
3636
* the policy is attached.</p>

clients/client-iam/src/commands/CreateServiceSpecificCredentialCommand.ts

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,9 @@ export interface CreateServiceSpecificCredentialCommandOutput
4242
* IAM, and can be used only for the specified service. </p>
4343
* <p>You can have a maximum of two sets of service-specific credentials for each supported
4444
* service per user.</p>
45-
* <p>You can create service-specific credentials for CodeCommit and Amazon Keyspaces (for Apache
46-
* Cassandra).</p>
47-
* <p>You can reset the password to a new service-generated value by calling <a>ResetServiceSpecificCredential</a>.</p>
48-
* <p>For more information about service-specific credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html">Using IAM
49-
* with CodeCommit: Git credentials, SSH keys, and Amazon Web Services access keys</a> in the
45+
* <p>You can create service-specific credentials for Amazon Bedrock, CodeCommit and Amazon Keyspaces (for Apache Cassandra).</p>
46+
* <p>You can reset the password to a new service-generated value by calling <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ResetServiceSpecificCredential.html">ResetServiceSpecificCredential</a>.</p>
47+
* <p>For more information about service-specific credentials, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_bedrock.html">Service-specific credentials for IAM users</a> in the
5048
* <i>IAM User Guide</i>.</p>
5149
* @example
5250
* Use a bare-bones client and the command you need to make an API call.
@@ -57,18 +55,22 @@ export interface CreateServiceSpecificCredentialCommandOutput
5755
* const input = { // CreateServiceSpecificCredentialRequest
5856
* UserName: "STRING_VALUE", // required
5957
* ServiceName: "STRING_VALUE", // required
58+
* CredentialAgeDays: Number("int"),
6059
* };
6160
* const command = new CreateServiceSpecificCredentialCommand(input);
6261
* const response = await client.send(command);
6362
* // { // CreateServiceSpecificCredentialResponse
6463
* // ServiceSpecificCredential: { // ServiceSpecificCredential
6564
* // CreateDate: new Date("TIMESTAMP"), // required
65+
* // ExpirationDate: new Date("TIMESTAMP"),
6666
* // ServiceName: "STRING_VALUE", // required
67-
* // ServiceUserName: "STRING_VALUE", // required
68-
* // ServicePassword: "STRING_VALUE", // required
67+
* // ServiceUserName: "STRING_VALUE",
68+
* // ServicePassword: "STRING_VALUE",
69+
* // ServiceCredentialAlias: "STRING_VALUE",
70+
* // ServiceCredentialSecret: "STRING_VALUE",
6971
* // ServiceSpecificCredentialId: "STRING_VALUE", // required
7072
* // UserName: "STRING_VALUE", // required
71-
* // Status: "Active" || "Inactive", // required
73+
* // Status: "Active" || "Inactive" || "Expired", // required
7274
* // },
7375
* // };
7476
*

clients/client-iam/src/commands/CreateVirtualMFADeviceCommand.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,10 @@ export interface CreateVirtualMFADeviceCommandOutput extends CreateVirtualMFADev
3333

3434
/**
3535
* <p>Creates a new virtual MFA device for the Amazon Web Services account. After creating the virtual
36-
* MFA, use <a>EnableMFADevice</a> to attach the MFA device to an IAM user.
37-
* For more information about creating and working with virtual MFA devices, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html">Using a virtual MFA
38-
* device</a> in the <i>IAM User Guide</i>.</p>
36+
* MFA, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_EnableMFADevice.html">EnableMFADevice</a> to
37+
* attach the MFA device to an IAM user. For more information about creating and working
38+
* with virtual MFA devices, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html">Using a virtual MFA device</a> in the
39+
* <i>IAM User Guide</i>.</p>
3940
* <p>For information about the maximum number of MFA devices you can create, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html">IAM and STS
4041
* quotas</a> in the <i>IAM User Guide</i>.</p>
4142
* <important>

clients/client-iam/src/commands/DeleteGroupPolicyCommand.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ export interface DeleteGroupPolicyCommandOutput extends __MetadataBearer {}
3131
* <p>Deletes the specified inline policy that is embedded in the specified IAM
3232
* group.</p>
3333
* <p>A group can also have managed policies attached to it. To detach a managed policy from
34-
* a group, use <a>DetachGroupPolicy</a>. For more information about policies,
35-
* refer to <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html">Managed policies and inline
34+
* a group, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachGroupPolicy.html">DetachGroupPolicy</a>.
35+
* For more information about policies, refer to <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html">Managed policies and inline
3636
* policies</a> in the <i>IAM User Guide</i>.</p>
3737
* @example
3838
* Use a bare-bones client and the command you need to make an API call.

clients/client-iam/src/commands/DeleteLoginProfileCommand.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,18 +28,19 @@ export interface DeleteLoginProfileCommandInput extends DeleteLoginProfileReques
2828
export interface DeleteLoginProfileCommandOutput extends __MetadataBearer {}
2929

3030
/**
31-
* <p>Deletes the password for the specified IAM user, For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_admin-change-user.html">Managing
31+
* <p>Deletes the password for the specified IAM user or root user, For more information, see
32+
* <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_admin-change-user.html">Managing
3233
* passwords for IAM users</a>.</p>
3334
* <p>You can use the CLI, the Amazon Web Services API, or the <b>Users</b>
34-
* page in the IAM console to delete a password for any IAM user. You can use <a>ChangePassword</a> to update, but not delete, your own password in the
35+
* page in the IAM console to delete a password for any IAM user. You can use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ChangePassword.html">ChangePassword</a> to update, but not delete, your own password in the
3536
* <b>My Security Credentials</b> page in the
3637
* Amazon Web Services Management Console.</p>
3738
* <important>
3839
* <p>Deleting a user's password does not prevent a user from accessing Amazon Web Services through
3940
* the command line interface or the API. To prevent all user access, you must also
4041
* either make any access keys inactive or delete them. For more information about
41-
* making keys inactive or deleting them, see <a>UpdateAccessKey</a> and
42-
* <a>DeleteAccessKey</a>.</p>
42+
* making keys inactive or deleting them, see <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html">UpdateAccessKey</a>
43+
* and <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteAccessKey.html">DeleteAccessKey</a>.</p>
4344
* </important>
4445
* @example
4546
* Use a bare-bones client and the command you need to make an API call.

clients/client-iam/src/commands/DeletePolicyCommand.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,15 +36,13 @@ export interface DeletePolicyCommandOutput extends __MetadataBearer {}
3636
* <ul>
3737
* <li>
3838
* <p>Detach the policy from all users, groups, and roles that the policy is
39-
* attached to, using <a>DetachUserPolicy</a>, <a>DetachGroupPolicy</a>, or <a>DetachRolePolicy</a>. To
40-
* list all the users, groups, and roles that a policy is attached to, use <a>ListEntitiesForPolicy</a>.</p>
39+
* attached to, using <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachUserPolicy.html">DetachUserPolicy</a>, <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachGroupPolicy.html">DetachGroupPolicy</a>, or <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachRolePolicy.html">DetachRolePolicy</a>. To list all the users, groups, and roles that a
40+
* policy is attached to, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html">ListEntitiesForPolicy</a>.</p>
4141
* </li>
4242
* <li>
43-
* <p>Delete all versions of the policy using <a>DeletePolicyVersion</a>.
44-
* To list the policy's versions, use <a>ListPolicyVersions</a>. You
45-
* cannot use <a>DeletePolicyVersion</a> to delete the version that is
46-
* marked as the default version. You delete the policy's default version in the
47-
* next step of the process.</p>
43+
* <p>Delete all versions of the policy using <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicyVersion.html">DeletePolicyVersion</a>. To list the policy's versions, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicyVersions.html">ListPolicyVersions</a>. You cannot use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicyVersion.html">DeletePolicyVersion</a> to delete the version that is marked as the
44+
* default version. You delete the policy's default version in the next step of the
45+
* process.</p>
4846
* </li>
4947
* <li>
5048
* <p>Delete the policy (this automatically deletes the policy's default version)

clients/client-iam/src/commands/DeletePolicyVersionCommand.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ export interface DeletePolicyVersionCommandOutput extends __MetadataBearer {}
3030
/**
3131
* <p>Deletes the specified version from the specified managed policy.</p>
3232
* <p>You cannot delete the default version from a policy using this operation. To delete
33-
* the default version from a policy, use <a>DeletePolicy</a>. To find out which
34-
* version of a policy is marked as the default version, use <a>ListPolicyVersions</a>.</p>
33+
* the default version from a policy, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicy.html">DeletePolicy</a>. To find
34+
* out which version of a policy is marked as the default version, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicyVersions.html">ListPolicyVersions</a>.</p>
3535
* <p>For information about versions for managed policies, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html">Versioning for managed
3636
* policies</a> in the <i>IAM User Guide</i>.</p>
3737
* @example

clients/client-iam/src/commands/DeleteRoleCommand.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,17 @@ export interface DeleteRoleCommandOutput extends __MetadataBearer {}
3434
* following attached items: </p>
3535
* <ul>
3636
* <li>
37-
* <p>Inline policies (<a>DeleteRolePolicy</a>)</p>
37+
* <p>Inline policies (<a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteRolePolicy.html">DeleteRolePolicy</a>)</p>
3838
* </li>
3939
* <li>
40-
* <p>Attached managed policies (<a>DetachRolePolicy</a>)</p>
40+
* <p>Attached managed policies (<a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachRolePolicy.html">DetachRolePolicy</a>)</p>
4141
* </li>
4242
* <li>
43-
* <p>Instance profile (<a>RemoveRoleFromInstanceProfile</a>)</p>
43+
* <p>Instance profile (<a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_RemoveRoleFromInstanceProfile.html">RemoveRoleFromInstanceProfile</a>)</p>
4444
* </li>
4545
* <li>
4646
* <p>Optional – Delete instance profile after detaching from role for
47-
* resource clean up (<a>DeleteInstanceProfile</a>)</p>
47+
* resource clean up (<a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteInstanceProfile.html">DeleteInstanceProfile</a>)</p>
4848
* </li>
4949
* </ul>
5050
* <important>

clients/client-iam/src/commands/DeleteRolePolicyCommand.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ export interface DeleteRolePolicyCommandOutput extends __MetadataBearer {}
3131
* <p>Deletes the specified inline policy that is embedded in the specified IAM
3232
* role.</p>
3333
* <p>A role can also have managed policies attached to it. To detach a managed policy from
34-
* a role, use <a>DetachRolePolicy</a>. For more information about policies,
35-
* refer to <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html">Managed policies and inline
34+
* a role, use <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachRolePolicy.html">DetachRolePolicy</a>.
35+
* For more information about policies, refer to <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html">Managed policies and inline
3636
* policies</a> in the <i>IAM User Guide</i>.</p>
3737
* @example
3838
* Use a bare-bones client and the command you need to make an API call.

clients/client-iam/src/commands/DeleteServiceLinkedRoleCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ export interface DeleteServiceLinkedRoleCommandOutput extends DeleteServiceLinke
3636
* is not complete, then the <code>DeletionTaskId</code> of the earlier request is
3737
* returned.</p>
3838
* <p>If you submit a deletion request for a service-linked role whose linked service is
39-
* still accessing a resource, then the deletion task fails. If it fails, the <a>GetServiceLinkedRoleDeletionStatus</a> operation returns the reason for the
39+
* still accessing a resource, then the deletion task fails. If it fails, the <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetServiceLinkedRoleDeletionStatus.html">GetServiceLinkedRoleDeletionStatus</a> operation returns the reason for the
4040
* failure, usually including the resources that must be deleted. To delete the
4141
* service-linked role, you must first remove those resources from the linked service and
4242
* then submit the deletion request again. Resources are specific to the service that is

0 commit comments

Comments
 (0)