Vault desde la entrada hasta la serie de competencia cuatro: use el código python para conectarse al servidor de Vault, almacenar contraseñas y leer contraseñas

Vault desde la entrada hasta la serie de competencia cuatro: use el código python para conectarse al servidor de Vault, almacenar contraseñas y leer contraseñas

1. Crear un cliente de Vault

Inicialice un nuevo cliente de Vault que utilizará la autenticación basada en token para todas sus solicitudes:

import hvac
import sys



client = hvac.Client(
    url='http://127.0.0.1:8200',
    token='hvs.BvXow4DjJ8VntB57DjQnd2hY',
)

2. Almacenar contraseña

Los secretos son datos confidenciales, como claves API y contraseñas, que no debemos almacenar en nuestro código o archivos de configuración. En cambio, queremos almacenar dichos valores en Vault.

Usaremos el cliente de Vault que acabamos de inicializar para escribir la contraseña en Vault de la siguiente manera:


create_response = client.secrets.kv.v2.create_or_update_secret(
    path='my-secret-password',
    secret=dict(password='Hashi123'),
)

print('Secret written successfully.')

3. Escribe el código completo de la contraseña

import hvac
import sys

client = hvac.Client(
    url='http://127.0.0.1:8200',
    token='hvs.BvXow4DjJ8VntB57DjQnd2hY',
)

create_response = client.secrets.kv.v2.create_or_update_secret(
    path='my-secret-password',
    secret=dict(password='Hashi123'),
)

print('Secret written successfully.')

En cuarto lugar, la línea de comando para ver la contraseña.

Después de ejecutar el código, vea la contraseña en la línea de comando

Inicie una nueva terminal, use el token raíz

export VAULT_ADDR='http://127.0.0.1:8200'
export VAULT_TOKEN="hvs.BvXow4DjJ8VntB57DjQnd2hY"

Ver mi-contraseña-secreta contraseña

vault kv get -mount=secret my-secret-password
========= Secret Path =========
secret/data/my-secret-password

======= Metadata =======
Key                Value
---                -----
created_time       2023-06-19T06:38:47.440087Z
custom_metadata    <nil>
deletion_time      n/a
destroyed          false
version            1

====== Data ======
Key         Value
---         -----
password    Hashi123

5. Usa el código para ver la contraseña

read_response = client.secrets.kv.read_secret_version(path='my-secret-password')

password = read_response['data']['data']['password']
print(password)

if password != 'Hashi123':
    sys.exit('unexpected password')

print('Access granted!')

Ejecute el código, el resultado es el siguiente:

Hashi123
Access granted!

Supongo que te gusta

Origin blog.csdn.net/zhengzaifeidelushang/article/details/131287833
Recomendado
Clasificación