Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Administración de usuarios con autenticación de quórum habilitada para AWS CloudHSM usar Cloud HSM CLI
Un AWS CloudHSM administrador del módulo de seguridad de hardware (HSM) puede configurar la autenticación de quórum para las siguientes operaciones del clúster: AWS CloudHSM
Una vez configurado el AWS CloudHSM clúster para la autenticación de quórum, los administradores no pueden realizar operaciones de administración HSM de usuarios por sí mismos. En el siguiente ejemplo, se muestra el resultado cuando un administrador intenta crear un nuevo usuario en el. HSM La ejecución del comando devuelve un error, indicando la obligatoriedad de la autenticación de cuórum.
aws-cloudhsm >
user create --username user1 --role crypto-user
Enter password: Confirm password: { "error_code": 1, "data": "Quorum approval is required for this operation" }
Para realizar una operación de administración de HSM usuarios, un administrador debe completar las siguientes tareas:
Temas
Paso 1. Cómo obtener un token de cuórum
En primer lugar, el administrador debe usar Cloud HSM CLI para solicitar un token de quórum.
Para obtener un token de cuórum
-
Usa el siguiente comando para iniciar Cloud HSMCLI.
-
Ejecute el comando login e inicie sesión en el clúster como administrador.
aws-cloudhsm>
login --username
admin
--role admin -
Utilice el comando quorum token-sign generate para generar un token de cuórum. Para obtener más información, consulte el siguiente ejemplo o utilice el comando help quorum token-sign generate.
ejemplo : genera un token de cuórum.
Este ejemplo obtiene un token de cuórum para el administrador con nombre de usuario admin
y guarda el token en un archivo denominado admin.token
. Para utilizar el comando de ejemplo, sustituya estos valores por los suyos:
-
<admin>
— El nombre del administrador que va a recibir el token. Debe ser el mismo administrador que ha iniciado sesión en HSM y está ejecutando este comando. -
<admin.token>
— El nombre del archivo que se utilizará para almacenar el token de quórum.
En el siguiente comando, user
identifica el nombre del servicio para el que puede utilizar el token que está obteniendo. En este caso, el token es para las operaciones de administración de HSM usuarios (user
servicio).
aws-cloudhsm >
login --username
<ADMIN>
--role<ADMIN>
--password<PASSWORD>
{ "error_code": 0, "data": { "username": "admin", "role": "admin" } }
aws-cloudhsm >
quorum token-sign generate --service user --token
</path/admin.token>
{ "error_code": 0, "data": { "path": "/home/tfile" } }
El comando quorum token-sign generate genera un token de cuórum de servicio de usuario en la ruta de archivo especificada. El archivo del token se puede inspeccionar:
$
cat
</path/admin.token>
{ "version": "2.0", "approval_data": "AAEAAwAAABgAAAAAAAAAAJ9eFkfcP3mNzJAlfK+OWbNhZG1pbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABj5vbeAAAAAAAAAAAAAQADAAAAFQAAAAAAAAAAW/v5Euk83amq1fij0zyvD2FkbWluAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGPm9t4AAAAAAAAAAAABAAMAAAAUAAAAAAAAAABDw2XDwfK4hB8a15Xh1E0nYWRtaW4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY+b23gAAAAAAAAAA", "token": "0l2LZkmAHZyAc1hPhyckOoVW33aGrgG77qmDHWQ3CJ8=", "signatures": [] }
El archivo del token consta de lo siguiente:
approval_data: un token de datos sin procesar codificado en base64 generado por. HSM
token: un token codificado en base64 y cifrado en SHA -256 hash de approval_data
firmas: conjunto de símbolos firmados (firmas) codificados en base64 del token sin firmar, en el que cada firma de un aprobador tiene la forma de un objeto literal: JSON
{ "username": "
<APPROVER_USERNAME>
", "signature": "<APPROVER_RSA2048_BIT_SIGNATURE>
" }Cada firma se crea a partir del resultado de que un aprobador utilice su clave privada correspondiente de RSA 2048 bits, cuya clave pública se registró con.. HSM
Se puede confirmar que el token de quórum del servicio de usuario generado existe en el HSM clúster de la nube ejecutando el comando: quorum token-sign list
aws-cloudhsm >
quorum token-sign list
{ "error_code": 0, "data": { "tokens": [ { "username": "admin", "service": "user", "approvals-required": { "value": 2 }, "number-of-approvals": { "value": 0 }, "token-timeout-seconds": { "value": 597 }, "cluster-coverage": "full" } ] } }
El tiempo token-timeout-seconds
indica el tiempo de espera en segundos para que un token generado se apruebe antes de que caduque.
Paso 2. Obtención de firmas de los administradores responsables de la aprobación
Un administrador que tiene un token de cuórum debe obtener la aprobación del token de otros administradores. Para dar su aprobación, los otros administradores utilizan su clave de firma para firmar criptográficamente el token. Lo hacen fuera delHSM.
Existen muchas maneras diferentes de firmar el token. El siguiente ejemplo muestra cómo hacerlo con Open SSL
ejemplo : obtenga firmas de los administradores responsables de la aprobación.
En este ejemplo, el administrador que tiene el token (admin
) necesita al menos dos (2) aprobaciones. Los siguientes comandos de ejemplo muestran cómo dos (2) administradores pueden usar Open SSL para firmar criptográficamente el token.
-
Decodifique el token sin firmar codificado en base64 e introdúzcalo en un archivo binario:
$
echo -n '0l2LZkmAHZyAc1hPhyckOoVW33aGrgG77qmDHWQ3CJ8=' | base64 -d > admin.bin
-
Utilice Open SSL y la clave privada correspondiente del aprobador
(admin3)
para firmar el token del servicio de usuario, ahora con quórum binario y sin firmar, y cree un archivo de firma binaria:$
openssl pkeyutl -sign \ -inkey admin3.key \ -pkeyopt digest:sha256 \ -keyform PEM \ -in admin.bin \ -out admin.sig.bin
-
Codifique la firma binaria en base64:
$
base64 -w0 admin.sig.bin > admin.sig.b64
-
Por último, copie y pegue la firma codificada en base64 en el archivo de token, siguiendo el formato literal del JSON objeto especificado anteriormente para la firma del aprobador:
{ "version": "2.0", "approval_data": "AAEAAwAAABgAAAAAAAAAAJ9eFkfcP3mNzJAlfK+OWbNhZG1pbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABj5vbeAAAAAAAAAAAAAQADAAAAFQAAAAAAAAAAW/v5Euk83amq1fij0zyvD2FkbWluAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGPm9t4AAAAAAAAAAAABAAMAAAAUAAAAAAAAAABDw2XDwfK4hB8a15Xh1E0nYWRtaW4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY+b23gAAAAAAAAAA", "token": "0l2LZkmAHZyAc1hPhyckOoVW33aGrgG77qmDHWQ3CJ8=", "signatures": [ { "username": "admin2", "signature": "O6qx7/mUaVkYYVr1PW7l8JJko+Kh3e8zBIqdk3tAiNy+1rW+OsDtvYujhEU4aOFVLcrUFmyB/CX9OQmgJLgx/pyK+ZPEH+GoJGqk9YZ7X1nOXwZRP9g7hKV+7XCtg9TuDFtHYWDpBfz2jWiu2fXfX4/jTs4f2xIfFPIDKcSP8fhxjQ63xEcCf1jzGha6rDQMu4xUWWdtDgfT7um7EJ9dXNoHqLB7cTzphaubNaEFbFPXQ1siGmYKmvETlqe/ssktwyruGFLpXs1n0tJOEglGhx2qbYTs+omKWZdORl5WIWEXW3IXw/Dg5vVObrNpvG0eZKO8nSMc27+cyPySc+ZbNw==" }, { "username": "admin3", "signature": "O6qx7/mUaVkYYVr1PW7l8JJko+Kh3e8zBIqdk3tAiNy+1rW+OsDtvYujhEU4aOFVLcrUFmyB/CX9OQmgJLgx/pyK+ZPEH+GoJGqk9YZ7X1nOXwZRP9g7hKV+7XCtg9TuDFtHYWDpBfz2jWiu2fXfX4/jTs4f2xIfFPIDKcSP8fhxjQ63xEcCf1jzGha6rDQMu4xUWWdtDgfT7um7EJ9dXNoHqLB7cTzphaubNaEFbFPXQ1siGmYKmvETlqe/ssktwyruGFLpXs1n0tJOEglGhx2qbYTs+omKWZdORl5WIWEXW3IXw/Dg5vVObrNpvG0eZKO8nSMc27+cyPySc+ZbNw==" } ] }
Paso 3. Apruebe el token en el clúster de AWS CloudHSM y ejecute una operación de administración de usuarios.
Una vez que el administrador cuente con las aprobaciones o firmas necesarias, tal y como se detalla en la sección anterior, puede proporcionar ese token al clúster de AWS CloudHSM junto con una de las siguientes operaciones de administración de usuarios:
Para obtener más información acerca del uso de estos comandos, consulte Gestión de usuarios con Cloud HSM CLI.
Durante la transacción, el token se aprobará en el AWS CloudHSM clúster y ejecutará la operación de administración de usuarios solicitada. El éxito de la operación de administración de usuarios depende, por un lado, de un token de cuórum válido y aprobado y, por otro, de una operación de administración de usuarios válida.
El administrador puede utilizar el token para una sola operación. Cuando dicha operación se realiza correctamente, el token ya no es válido. Para realizar otra operación de administración de HSM usuarios, el administrador debe repetir el proceso descrito anteriormente. Es decir, el administrador debe generar un nuevo token de quórum, obtener nuevas firmas de los responsables de la aprobación y, a continuación, aprobar y consumir el nuevo token HSM junto con la operación de administración de usuarios solicitada.
nota
El token de cuórum solo será válido mientras se mantenga la sesión actual iniciada. Si cierras sesión en Cloud HSM CLI o si la red se desconecta, el token deja de ser válido. Del mismo modo, un token autorizado solo se puede usar en Cloud HSMCLI. No puede usarse para autenticarse en una aplicación diferente.
ejemplo Creación de un nuevo usuario como administrador
En el siguiente ejemplo, un administrador que ha iniciado sesión crea un nuevo usuario enHSM:
aws-cloudhsm >
user create --username user1 --role crypto-user --approval /path/admin.token
Enter password: Confirm password: { "error_code": 0, "data": { "username": "user1", "role": "crypto-user" } }
A continuación, el administrador introduce el comando user list para confirmar la creación del nuevo usuario:
aws-cloudhsm >
user list
{ "error_code": 0, "data": { "users": [ { "username": "admin", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "admin2", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "admin3", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "admin4", "role": "admin", "locked": "false", "mfa": [], "quorum": [ { "strategy": "token-sign", "status": "enabled" } ], "cluster-coverage": "full" }, { "username": "user1", "role": "crypto-user", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" }, { "username": "app_user", "role": "internal(APPLIANCE_USER)", "locked": "false", "mfa": [], "quorum": [], "cluster-coverage": "full" } ] } }
Si el administrador intenta realizar otra operación de administración de HSM usuarios, se produce un error de autenticación de quórum:
aws-cloudhsm >
user delete --username user1 --role crypto-user
{ "error_code": 1, "data": "Quorum approval is required for this operation" }
Como se muestra a continuación, el comando quorum token-sign list muestra que el administrador no tiene ningún token aprobado. Para realizar otra operación de administración de HSM usuarios, el administrador debe generar un nuevo token de quórum, obtener nuevas firmas de los aprobadores y ejecutar la operación de administración de usuarios deseada con el argumento --approval para proporcionar el token de quórum que se aprobará y consumirá durante la ejecución de la operación de administración de usuarios.
aws-cloudhsm >
quorum token-sign list
{ "error_code": 0, "data": { "tokens": [] } }