Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Du kan lagra Azure Database for MySQL – flexibel server anslutningssträng i Azure Key Vault för att säkerställa att känslig information hanteras på ett säkert sätt och endast används av behöriga användare eller program. Dessutom kan alla ändringar av anslutningssträng enkelt uppdateras i Key Vault utan att ändra programkoden.
Förutsättningar
- Du behöver en Azure-prenumerationen. Om du inte redan har en prenumeration skapar du ett kostnadsfritt konto innan du börjar.
- All åtkomst till hemligheter sker via Azure Key Vault. I den här snabbstarten skapar du ett nyckelvalv med hjälp av Azure Portal, Azure CLI eller Azure PowerShell. Kontrollera att du har de behörigheter som krävs för att hantera och komma åt Key Vault.
- Installera .NET, Java eller PHP eller Python baserat på det ramverk som du använder för ditt program.
Lägga till en hemlighet i Key Vault
Följ stegen för att lägga till en hemlighet i valvet:
- Gå till ditt nya nyckelvalv i Azure-portalen.
- På sidan Key Vault-inställningar väljer du Hemligheter.
- Välj Generera/Importera.
- På sidan Skapa en hemlighet anger du följande information:
- Uppladdningsalternativ: Manuell.
- Namn: Ange ett namn på hemligheten. Det hemliga namnet måste vara unikt i ett nyckelvalv. Namnet måste vara en sträng på 1–127 tecken, som börjar med en bokstav och endast innehåller 0–9, a-z, A-Z och -. Mer information om namngivning finns i Key Vault-objekt, identifierare och versionshantering
- Värde: Ange ett värde för hemligheten. Key Vault-API:er accepterar och returnerar hemliga värden som strängar.
- Lämna standardvärdena för de andra alternativen. Välj Skapa.
När du får meddelandet om att hemligheten har skapats kan du välja den i listan.
Mer information finns i Om Azure Key Vault-hemligheter
Konfigurera åtkomstprinciper
I Key Vault-inställningarna konfigurerar du lämpliga åtkomstprinciper för att bevilja åtkomst till de användare eller program som behöver hämta Azure Database for MySQL – flexibel server anslutningssträng från Key Vault. Se till att nödvändiga behörigheter beviljas för "Get"-åtgärder för hemligheter.
- I Azure Portal navigerar du till Key Vault-resursen.
- Välj fliken Åtkomstpolicyer och välj Skapa.
- Välj de behörigheter du vill ha under Nyckelbehörigheter, Hemliga behörigheter och Certifikatbehörigheter.
- Under fönstret Principal selection (Huvudnamn ) anger du namnet på användaren, appen eller tjänstens huvudnamn i sökfältet och väljer lämpligt resultat. Om du använder en hanterad identitet för appen söker du efter och väljer namnet på själva appen.
- Granska ändringarna av åtkomstprincipen och välj Skapa för att spara åtkomstprincipen.
- På sidan Åtkomstprinciper kontrollerar du att din åtkomstprincip visas.
Hämta Azure Database for MySQL – flexibel server anslutningssträng
I ditt program eller skript använder du Azure Key Vault SDK eller klientbibliotek för att autentisera och hämta Azure Database for MySQL – flexibel server anslutningssträng från Key Vault. Du måste ange lämpliga autentiseringsuppgifter och åtkomstbehörigheter för att få åtkomst till Key Vault. När du har hämtat Azure Database for MySQL – flexibel server anslutningssträng från Azure Key Vault kan du använda den i ditt program för att upprätta en anslutning till databasen Azure Database for MySQL – flexibel server. Skicka den hämtade anslutningssträng som en parameter till databasanslutningskoden.
Kodexempel för att hämta anslutningssträng
Här följer några kodexempel för att hämta anslutningssträng från nyckelvalvshemligheten.
I den här koden använder vi Azure SDK för .NET. Vi definierar URI:n för vårt nyckelvalv och namnet på hemligheten (anslutningssträng) som vi vill hämta. Sedan skapar vi ett nytt DefaultAzureCredential-objekt som representerar autentiseringsinformationen för vårt program för åtkomst till Key Vault.
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}");
}
}
}