Migración a La Cumbre de innovación:
Obtenga información sobre cómo migrar y modernizar a Azure puede aumentar el rendimiento, la resistencia y la seguridad de su empresa, lo que le permite adoptar completamente la inteligencia artificial.Regístrese ahora
Este explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Tutorial: Administración de credenciales de servidor flexible en Azure Database for MySQL en Azure Key Vault
Artículo
Puede almacenar la cadena de conexión del servidor flexible de Azure Database for MySQL en Azure Key Vault para asegurarse de que la información confidencial se administra de forma segura y a la que solo acceden usuarios o aplicaciones autorizados. Además, los cambios en la cadena de conexión se pueden actualizar fácilmente en el Key Vault sin modificar el código de la aplicación.
Prerrequisitos
Necesita una suscripción de Azure. Si todavía no tiene una suscripción, cree una cuenta gratuita antes de empezar.
Todo acceso a los secretos tiene lugar a través de Azure Key Vault. Para este inicio rápido, cree un almacén de claves mediante Azure Portal, la CLI de Azure o Azure PowerShell. Asegúrese de que tiene los permisos necesarios para administrar y acceder al Key Vault.
Instale .NET, Java, PHP o Python en función del marco que usa para la aplicación.
Incorporación de un secreto a Key Vault
Para agregar un secreto al almacén, siga estos pasos:
Vaya al nuevo almacén de claves en Azure Portal.
En las páginas de configuración de Key Vault, seleccione Secretos.
Seleccione Generar/Importar.
En la página Crear un secreto, proporcione la información siguiente:
Opciones de carga: Manual.
Name: Escriba un nombre para el secreto. El nombre del secreto debe ser único en Key Vault. El nombre debe ser una cadena de entre 1 y 127 caracteres que solo contenga 0-9, a-z, A-Z y -. Para más información sobre la nomenclatura, consulte Objetos, identificadores y control de versiones de Key Vault.
Valor: Escriba un valor para el secreto. Las API de Key Vault aceptan y devuelven los valores de secreto como cadenas.
Deje las restantes opciones con sus valores predeterminados. Seleccione Crear.
Una vez que reciba el mensaje que el secreto se ha creado correctamente, puede seleccionarlo en la lista.
En la configuración de Key Vault, configure las directivas de acceso adecuadas para conceder acceso a los usuarios o aplicaciones que necesitan recuperar la cadena de conexión del servidor flexible de Azure Database for MySQL desde Key Vault. Asegúrese de que se conceden los permisos necesarios para las operaciones "Get" en secretos.
Seleccione los permisos que quiera en Permisos de las claves, Permisos de los secretos y Permisos de los certificados.
En el panel de selección Principal, escriba el nombre del usuario, la aplicación o entidad de servicio en el campo de búsqueda y seleccione el resultado adecuado. Si usa una identidad administrada para la aplicación, busque y seleccione el nombre de la propia aplicación
Revise los cambios de la directiva de acceso y seleccione Crear para guardar la directiva de acceso.
De nuevo en la página Directivas de acceso, compruebe que aparece la directiva de acceso.
Recuperar la cadena de conexión del servidor flexible de Azure Database for MySQL
En la aplicación o script, use el SDK o las bibliotecas cliente de Azure Key Vault para autenticar y recuperar la cadena de conexión del servidor flexible de Azure Database for MySQL desde Key Vault. Debe proporcionar las credenciales de autenticación adecuadas y los permisos de acceso para acceder al Key Vault. Una vez que haya recuperado la cadena de conexión del servidor flexible de Azure Database for MySQL desde Azure Key Vault, puede usarla en la aplicación para establecer una conexión a la base de datos del servidor flexible de Azure Database for MySQL. Pase la cadena de conexión recuperada como parámetro al código de conexión de la base de datos.
Ejemplos de código para recuperar la cadena de conexión
Estos son algunos ejemplos de código para recuperar la cadena de conexión del secreto del almacén de claves.
En este código, usamos el SDK de Azure para .NET. Definimos el URI de nuestro Key Vault y el nombre del secreto (cadena de conexión) que queremos recuperar. A continuación, creamos un nuevo objeto DefaultAzureCredential, que representa la información de autenticación de la aplicación para acceder al Key Vault.
PowerShell
using System;
using System.Threading.Tasks;
using Azure.Identity;
using Azure.Security.KeyVault.Secrets;
namespace KeyVaultDemo
{
class Program
{
static async Task Main(string[] args)
{
var kvUri = "https://my-key-vault.vault.azure.net/";
var secretName = "my-db-conn-string";
var credential = new DefaultAzureCredential();
var client = new SecretClient(new Uri(kvUri), credential);
var secret = await client.GetSecretAsync(secretName);
var connString = secret.Value;
Console.WriteLine($"Connection string retrieved: {connString}");
}
}
}
En este código Java, usamos el SDK de Azure para Java para interactuar con Azure Key Vault. Primero definimos la dirección URL de Key Vault y el nombre del secreto (cadena de conexión) que queremos recuperar. A continuación, creamos un objeto SecretClient mediante la clase SecretClientBuilder. Establecemos la dirección URL de Key Vault y proporcionamos DefaultAzureCredential para autenticarse con Microsoft Entra ID. DefaultAzureCredential se autentica automáticamente mediante las credenciales disponibles, como variables de entorno, identidades administradas o autenticación Visual Studio Code.
A continuación, usamos el método getSecret en SecretClient para recuperar el secreto. El método devuelve un objeto KeyVaultSecret, del que podemos obtener el valor del secreto mediante el método getValue. Por último, se imprime la cadena de conexión recuperada en la consola. Asegúrese de reemplazar las variables keyVaultUrl y secretName por su propia dirección URL de Key Vault y el nombre del secreto. A continuación, creamos un nuevo objeto SecretClient y pasamos el URI de Key Vault y el objeto de credencial. A continuación, podemos llamar al método GetSecretAsync en el objeto de cliente, pasando el nombre del secreto que queremos recuperar.
En este código PHP, primero necesitamos el archivo de carga automática necesario e importamos las clases necesarias desde el SDK de Azure para PHP. Definimos la variable $keyVaultUrl con la dirección URL de Azure Key Vault y la variable $secretName con el nombre del secreto (cadena de conexión) que quiere recuperar. A continuación, creamos un objeto DefaultAzureCredential para autenticarse con Microsoft Entra ID, que recoge automáticamente las credenciales disponibles del entorno.
A continuación, creamos un objeto SecretClient, pasando la dirección URL de Key Vault y el objeto de credencial para autenticarse con el Key Vault. El método getSecret en SecretClient puede recuperar el secreto pasando el $secretName. El método devuelve un objeto KeyVaultSecret, del que podemos obtener el valor del secreto mediante el método getValue. Por último, se imprime la cadena de conexión recuperada en la consola. Asegúrese de tener instalados los paquetes necesarios del SDK de Azure y el archivo de carga automática incluido correctamente en el proyecto PHP.
SQL
require_once 'vendor/autoload.php';
use Azure\Identity\DefaultAzureCredential;
use Azure\Security\KeyVault\Secrets\SecretClient;
$keyVaultUrl = 'https://my-key-vault.vault.azure.net/';
$secretName = 'my-db-conn-string';
$credential = new DefaultAzureCredential();
$client = new SecretClient($keyVaultUrl, $credential);
$secret = $client->getSecret($secretName);
$connString = $secret->getValue();
echo 'Connection string retrieved: ' . $connString;
En este código de Python, primero se importan los módulos necesarios desde el SDK de Azure para Python. Definimos la variable key_vault_url con la dirección URL de Azure Key Vault y la variable secret_name con el nombre del secreto (cadena de conexión) que quiere recuperar. A continuación, creamos un objeto DefaultAzureCredential para autenticarse con Microsoft Entra ID. DefaultAzureCredential se autentica automáticamente mediante las credenciales disponibles, como variables de entorno, identidades administradas o autenticación Visual Studio Code.
A continuación, creamos un objeto SecretClient, pasando la dirección URL de Key Vault y el objeto de credencial para autenticarse con el Key Vault. El método get_secret en SecretClient puede recuperar el secreto pasando el secret_name. El método devuelve un objeto KeyVaultSecret, del que podemos obtener el valor del secreto mediante la propiedad del valor. Por último, se imprime la cadena de conexión recuperada en la consola. Asegúrese de reemplazar las variables key_vault_url y secret_name por su propia dirección URL de Key Vault y el nombre del secreto.
Administre una infraestructura de base de datos de SQL Server para bases de datos relacionales locales e híbridas en la nube mediante las ofertas de bases de datos relacionales PaaS de Microsoft.
En esta guía se describe cómo conectarse a Azure Database for MySQL en Microsoft Purview y cómo usar las características de Microsoft Purview para examinar y administrar el origen de Azure Database for MySQL.