Uso de la firma codificada en base64 para verificar el Documentos de identidad de instancia
En este tema, se explica cómo verificar el documento de identidad de la instancia mediante la firma codificada en base64 y el certificado público de RSA de AWS.
Para validar el documento de identidad de la instancia mediante la firma codificada en base64 y el certificado público del RSA de AWS
-
Conéctese a la instancia.
-
Recupere la firma codificada en base64 de los metadatos de la instancia, conviértala a binario y agréguela a un archivo denominado
signature
. Utilice uno de los siguientes comandos dependiendo de la versión IMDS utilizada por la instancia. -
Recupere el Documentos de identidad de instancia de texto sin formato de los metadatos de la instancia y agréguelo a un archivo denominado
document
. Utilice uno de los siguientes comandos dependiendo de la versión IMDS utilizada por la instancia. -
Busque el certificado público RSA para su región en Certificados públicos de AWS y agregue el contenido a un archivo nuevo denominado
certificate
. -
Extraiga la clave pública del certificado público RSA de AWS y guárdela en un archivo denominado
key
.$
openssl x509 -pubkey -noout -incertificate
>>key
-
Utilice el comando OpenSSL dgst para verificar el documento de identidad de instancia.
$
openssl dgst -sha256 -verifykey
-signaturesignature
document
Si la firma es válida, aparecerá el mensaje
Verification successful
.El comando también escribe el contenido del documento de identidad de la instancia en un nuevo archivo llamado
document
. Puede comparar el contenido del documento de identidad de la instancia de los metadatos de la instancia con el contenido de este archivo mediante los siguientes comandos.$
openssl dgst -sha256 <document
$
curl -s -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/dynamic/instance-identity/document | openssl dgst -sha256Si no se puede verificar la firma, póngase en contacto con AWS Support.
Para validar el documento de identidad de la instancia mediante la firma codificada en base64 y el certificado público del RSA de AWS
-
Conéctese a la instancia.
-
Recupere la firma codificada en base64 de los metadatos de instancia, conviértala en una matriz de bytes y agréguela a la variable denominada
$Signature
. Utilice uno de los siguientes comandos dependiendo de la versión IMDS utilizada por la instancia. -
Recupere el documento de identidad de instancia de texto sin formato de los metadatos de instancia, conviértalo en una matriz de bytes y agréguelo a una variable denominada
$Document
. Utilice uno de los siguientes comandos dependiendo de la versión IMDS utilizada por la instancia. -
Busque el certificado público RSA para su región en Certificados públicos de AWS y agregue el contenido a un archivo nuevo denominado
certificate.pem
. -
Verifique el documento de identidad de la instancia.
PS C:\>
[Security.Cryptography.X509Certificates.X509Certificate2]::new((Resolve-Pathcertificate.pem
)).PublicKey.Key.VerifyData($Document
, 'SHA256',$Signature
)Si la firma es válida, el comando devuelve
True
. Si no se puede verificar la firma, póngase en contacto con AWS Support.