Je ne parviens pas à mettre ce que la documentation dit en pratique. J'essaye de m'authentifier à un service de coffre en utilisant des certificats. Le documentation dit:mise en œuvre curl Comprendre
Via l'API
Le critère d'évaluation pour la connexion est/login. Le client se connecte simplement avec leur certificat TLS et lorsque le point final de connexion est touché, le back-end auth déterminera s'il y a un certificat approuvé correspondant à authentifier le client. En option, vous pouvez spécifier un seul rôle de certificat à authentifier.
$ curl --cacert ca.pem --cert cert.pem --key key.pem -d name=web \ $VAULT_ADDR/v1/auth/cert/login -XPOST
maintenant l'adresse IP du noeud: Port que je veux authentifier auprès est 17.2.24.13:8200
Donc, voici ce que je fais depuis un serveur distant.
openssl s_client -showcerts -connect 17.2.24.13:8200
Cela conduit à une sortie gigantesque qui contient une section ::
-----BEGIN CERTIFICATE-----
XXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXX
-----END CERTIFICATE-----
Maintenant, je crois que c'est le certificat, le besoin Vault.
J'écrire la sortie ci-dessus pour vault.cer
fichier
Maintenant, en utilisant vault.cer
Je vais authentifier. Donc Im en cours d'exécution de la commande ci-dessous.
curl --cert vault.crt https://17.2.24.13:8200/v1/auth/cert/login -XPOST
Mais l'erreur que je reçois est:
curl: (60) Certificate key usage inadequate for attempted operation.
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
Si j'ajoute le drapeau -k
, je reçois l'erreur ci-dessous. Donc, je suis vraiment confus quant à ce qui me manque vraiment dans ce scénario.