updateSSHPublicKey method

Future<void> updateSSHPublicKey({
  1. required String sSHPublicKeyId,
  2. required StatusType status,
  3. required String userName,
})

Sets the status of an IAM user's SSH public key to active or inactive. SSH public keys that are inactive cannot be used for authentication. This operation can be used to disable a user's SSH public key as part of a key rotation work flow.

The SSH public key affected by this operation is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH Connections in the AWS CodeCommit User Guide.

May throw NoSuchEntityException.

Parameter sSHPublicKeyId : The unique identifier for the SSH public key.

This parameter allows (through its regex pattern) a string of characters that can consist of any upper or lowercased letter or digit.

Parameter status : The status to assign to the SSH public key. Active means that the key can be used for authentication with an AWS CodeCommit repository. Inactive means that the key cannot be used.

Parameter userName : The name of the IAM user associated with the SSH public key.

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-

Implementation

Future<void> updateSSHPublicKey({
  required String sSHPublicKeyId,
  required StatusType status,
  required String userName,
}) async {
  ArgumentError.checkNotNull(sSHPublicKeyId, 'sSHPublicKeyId');
  _s.validateStringLength(
    'sSHPublicKeyId',
    sSHPublicKeyId,
    20,
    128,
    isRequired: true,
  );
  ArgumentError.checkNotNull(status, 'status');
  ArgumentError.checkNotNull(userName, 'userName');
  _s.validateStringLength(
    'userName',
    userName,
    1,
    64,
    isRequired: true,
  );
  final $request = <String, dynamic>{};
  $request['SSHPublicKeyId'] = sSHPublicKeyId;
  $request['Status'] = status.toValue();
  $request['UserName'] = userName;
  await _protocol.send(
    $request,
    action: 'UpdateSSHPublicKey',
    version: '2010-05-08',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    shape: shapes['UpdateSSHPublicKeyRequest'],
    shapes: shapes,
  );
}