

# AWS: permite a los usuarios de IAM administrar su propia contraseña, sus claves de acceso y sus claves públicas SSH en la página Credenciales de seguridad
<a name="reference_policies_examples_aws_my-sec-creds-self-manage-pass-accesskeys-ssh"></a>

Este ejemplo muestra cómo podría crear una política de IAM que permita a los usuarios de IAM administrar su propia contraseña, claves de acceso y certificados X.509 en la página **Credenciales de seguridad**. En esta página de la Consola de administración de AWS, se muestra información de la cuenta, como el ID de cuenta y el ID de usuario canónico. Los usuarios también pueden ver y editar sus propias contraseñas, claves de acceso, dispositivos MFA, certificados X.509, claves SSH y credenciales de Git. Esta política de ejemplo incluye los permisos que son necesarios únicamente para ver y editar la contraseña, las claves de acceso y el certificado X.509. Para permitir a los usuarios administrar todas sus credenciales con MFA, consulte [AWS: permite a los usuarios de IAM autenticados por MFA administrar sus propias credenciales en la página Credenciales de seguridad](reference_policies_examples_aws_my-sec-creds-self-manage.md). Para permitir a los usuarios administrar sus propias credenciales sin utilizar MFA, consulte [AWS: permite a los usuarios de IAM administrar sus propias credenciales en la página Credenciales de seguridad](reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa.md).

Para información sobre el acceso a la página **Credenciales de seguridad**, consulte [Cómo cambian los usuarios de IAM su propia contraseña (consola)](id_credentials_passwords_user-change-own.md#ManagingUserPwdSelf-Console).

**Qué hace esta política? **
+ La instrucción `AllowViewAccountInfo` permite al usuario ver la información de nivel de cuenta. Estos permisos deben estar en su propia instrucción, ya que no admiten o no requieren un ARN de recurso. En lugar de ello, los permisos especifican `"Resource" : "*"`. Esta instrucción incluye las siguientes acciones que permiten al usuario ver información específica: 
  + `GetAccountPasswordPolicy`: ver los requisitos de contraseña de la cuenta y cambiar la contraseña de su propio usuario de IAM.
  + `GetAccountSummary`: ver el ID de cuenta y el [ID de usuario canónico de la cuenta](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html#FindingCanonicalId).
+ La instrucción `AllowManageOwnPasswords` permite al usuario cambiar su propia contraseña. Esta instrucción incluye también la acción `GetUser`, que es necesaria para ver la mayor parte de la información de la página **My security credentials** (Mis credenciales de seguridad).
+ La instrucción `AllowManageOwnAccessKeys` permite al usuario crear, actualizar y eliminar sus propias claves de acceso. El usuario también puede recuperar información acerca de cuándo se utilizó por última vez la clave de acceso especificada.
+ La instrucción `AllowManageOwnSSHPublicKeys` permite al usuario cargar, actualizar y eliminar sus propias claves públicas SSH de CodeCommit.

Esta política no permite a los usuarios ver ni administrar sus propios dispositivos MFA. Tampoco pueden ver la página **Usuarios** de la consola de IAM ni utilizar esa página para obtener acceso a su propia información de usuario. Si desea permitirlo, añada la acción `iam:ListUsers` a la instrucción `AllowViewAccountInfo`. Tampoco permite a los usuarios cambiar su contraseña en su propia página de usuario. Si desea permitirlo, agregue las acciones `iam:GetLoginProfile` e `iam:UpdateLoginProfile` a la instrucción `AllowManageOwnPasswords`. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowViewAccountInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetAccountPasswordPolicy",
                "iam:GetAccountSummary"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowManageOwnPasswords",
            "Effect": "Allow",
            "Action": [
                "iam:ChangePassword",
                "iam:GetUser"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:CreateAccessKey",
                "iam:DeleteAccessKey",
                "iam:ListAccessKeys",
                "iam:UpdateAccessKey",
                "iam:GetAccessKeyLastUsed"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        },
        {
            "Sid": "AllowManageOwnSSHPublicKeys",
            "Effect": "Allow",
            "Action": [
                "iam:DeleteSSHPublicKey",
                "iam:GetSSHPublicKey",
                "iam:ListSSHPublicKeys",
                "iam:UpdateSSHPublicKey",
                "iam:UploadSSHPublicKey"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        }
    ]
}
```

------