Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Azure Key Vault udostępnia dwa typy kontenerów do przechowywania i zarządzania tajemnicami dla aplikacji w chmurze.
Typ kontenera | Obsługiwane typy obiektów | Punkt końcowy płaszczyzny danych |
---|---|---|
Skarbce |
|
https://{nazwa magazynu}.vault.azure.net |
Zarządzany moduł HSM |
|
https://{hsm-name}.managedhsm.azure.net |
Poniżej przedstawiono sufiksy adresów URL używanych do uzyskiwania dostępu do każdego typu obiektu
Typ obiektu | Sufiks adresu URL |
---|---|
Klucze chronione programowo | /Klucze |
Klucze chronione przez moduł HSM | /Klucze |
Tajemnice | /Tajemnice |
Certyfikaty | /Certyfikaty |
Klucze konta przechowywania danych | /storageaccounts |
Usługa Azure Key Vault obsługuje żądania i odpowiedzi w formacie JSON. Żądania do usługi Azure Key Vault są kierowane do prawidłowego adresu URL usługi Azure Key Vault przy użyciu protokołu HTTPS z pewnymi parametrami adresu URL i kodowanymi treściami żądania i odpowiedzi w formacie JSON.
W tym artykule opisano szczegółowe informacje dotyczące usługi Azure Key Vault. Aby uzyskać ogólne informacje na temat korzystania z interfejsów REST platformy Azure, w tym uwierzytelniania/autoryzacji i sposobu uzyskiwania tokenu dostępu, zobacz Dokumentacja interfejsu API REST platformy Azure.
Struktura adresu URL żądania
Operacje zarządzania kluczami używają czasowników HTTP, takich jak DELETE, GET, PATCH i PUT. Operacje kryptograficzne na istniejących obiektach kluczy używają protokołu HTTP POST.
W przypadku klientów, którzy nie mogą obsługiwać określonych czasowników HTTP, usługa Azure Key Vault umożliwia użycie protokołu HTTP POST z nagłówkiem X-HTTP-REQUEST
w celu określenia zamierzonego czasownika. W przypadku używania funkcji POST jako zamiennika (na przykład zamiast DELETE), dołącz pustą treść dla żądań, które zwykle jej nie wymagają.
Aby pracować z obiektami w usłudze Azure Key Vault, oto przykładowe adresy URL:
Aby utworzyć klucz o nazwie TESTKEY w usłudze Key Vault, użyj polecenia —
PUT /keys/TESTKEY?api-version=<api_version> HTTP/1.1
Aby zaimportować klucz o nazwie IMPORTKEY do usługi Key Vault, użyj polecenia —
POST /keys/IMPORTEDKEY/import?api-version=<api_version> HTTP/1.1
Aby uzyskać wpis tajny o nazwie MYSECRET w usłudze Key Vault, użyj polecenia —
GET /secrets/MYSECRET?api-version=<api_version> HTTP/1.1
Aby podpisać skrót przy użyciu klucza o nazwie TESTKEY w usłudze Key Vault, użyj
POST /keys/TESTKEY/sign?api-version=<api_version> HTTP/1.1
Uprawnienia dla żądania do usługi Key Vault są zawsze takie same.
- W przypadku skarbców:
https://{keyvault-name}.vault.azure.net/
- W przypadku zarządzanych modułów HSM:
https://{HSM-name}.managedhsm.azure.net/
klucze są zawsze przechowywane w ścieżce /keys, podczas gdy sekrety są zawsze przechowywane w ścieżce /secrets.
- W przypadku skarbców:
Obsługiwane wersje interfejsu API
Usługa Azure Key Vault obsługuje przechowywanie wersji protokołu w celu zapewnienia zgodności z klientami na poziomie podrzędnym, chociaż nie wszystkie funkcje są dostępne dla tych klientów. Klienci muszą użyć parametru api-version
ciągu zapytania, aby określić wersję protokołu, który obsługuje, ponieważ nie ma wartości domyślnej.
Wersje protokołu usługi Azure Key Vault są zgodne ze schematem numerowania dat w formacie {YYYY}.{MM}.{DD}.
Wymagania dotyczące treści żądania
Zgodnie ze specyfikacją HTTP operacje GET nie mogą mieć treści żądania, a operacje POST i PUT muszą mieć treść żądania. Treść operacji DELETE jest opcjonalna w protokole HTTP.
O ile nie określono inaczej w opisie operacji, typ zawartości treści żądania musi być application/json i musi zawierać serializowany obiekt JSON zgodny z typem zawartości.
Jeśli nie określono inaczej w opisie operacji, nagłówek żądania Accept musi zawierać typ nośnika application/json.
Format treści odpowiedzi
O ile nie określono inaczej w opisie operacji, typ zawartości treści odpowiedzi zarówno operacji zakończonych powodzeniem, jak i niepowodzeniem to application/json i zawiera szczegółowe informacje o błędzie.
Używanie protokołu HTTP POST jako alternatywy
Niektórzy klienci mogą nie być w stanie używać określonych czasowników HTTP, takich jak PATCH lub DELETE. Usługa Azure Key Vault obsługuje protokół HTTP POST jako alternatywę dla tych klientów, jeśli klient zawiera również nagłówek "X-HTTP-METHOD" do określonego oryginalnego zlecenia HTTP. Obsługa protokołu HTTP POST jest opisana dla każdej zdefiniowanej w tym dokumencie API.
Obsługa odpowiedzi na błędy
Obsługa błędów używa kodów stanu HTTP. Typowe wyniki to:
2xx — sukces: używany do normalnego działania. Treść odpowiedzi zawiera oczekiwany wynik
3xx — Przekierowanie: 304 "Niezmodyfikowane" może zostać zwrócone w celu spełnienia warunkowego żądania GET. Inne kody 3xx mogą być używane w przyszłości w celu wskazania zmian dns i ścieżki.
4xx — błąd klienta: używany w przypadku nieprawidłowych żądań, brakujących kluczy, błędów składni, nieprawidłowych parametrów, błędów uwierzytelniania itp. Treść odpowiedzi zawiera szczegółowe wyjaśnienie błędu.
5xx — błąd serwera: używany w przypadku wewnętrznych błędów serwera. Treść odpowiedzi zawiera podsumowane informacje o błędzie.
System jest przeznaczony do pracy za serwerem proxy lub zaporą. W związku z tym klient może otrzymać inne kody błędów.
Usługa Azure Key Vault zwraca również informacje o błędach w treści odpowiedzi, gdy wystąpi problem. Treść odpowiedzi jest sformatowana w formacie JSON i ma postać:
{
"error":
{
"code": "BadArgument",
"message":
"’Foo’ is not a valid argument for ‘type’."
}
}
}
Wymagania dotyczące uwierzytelniania
Wszystkie żądania do usługi Azure Key Vault muszą być uwierzytelnione. Usługa Azure Key Vault obsługuje tokeny dostępu firmy Microsoft, które można uzyskać przy użyciu protokołu OAuth2 [RFC6749].
Aby uzyskać więcej informacji na temat rejestrowania aplikacji i uwierzytelniania w celu korzystania z usługi Azure Key Vault, zobacz Rejestrowanie aplikacji klienckiej w usłudze Microsoft Entra ID.
Tokeny dostępu muszą być wysyłane do usługi przy użyciu nagłówka autoryzacji HTTP:
PUT /keys/MYKEY?api-version=<api_version> HTTP/1.1
Authorization: Bearer <access_token>
Jeśli token dostępu nie zostanie podany lub gdy usługa nie akceptuje tokenu, zwracany jest błąd HTTP 401 do klienta i zawiera nagłówek WWW-Authenticate, na przykład:
401 Not Authorized
WWW-Authenticate: Bearer authorization="…", resource="…"
Parametry na nagłówku WWW-Authenticate to:
autoryzacja: adres usługi autoryzacji OAuth2, która może służyć do uzyskania tokenu dostępu dla żądania.
resource: nazwa zasobu (
https://vault.azure.net
) do użycia w żądaniu autoryzacji.
Uwaga / Notatka
Klienci SDK Key Vault dla tajemnic, certyfikatów i kluczy podczas pierwszego wywołania Key Vault nie dostarczają tokenu dostępu do pobrania informacji o dzierżawcy. Oczekuje się otrzymanie kodu HTTP 401 przy użyciu klienta SDK Key Vault, w którym usługa Key Vault wyświetla aplikacji nagłówek WWW-Authenticate zawierający zasób i dzierżawcę, do której trzeba się udać w celu uzyskania tokenu. Jeśli wszystko jest poprawnie skonfigurowane, drugie wywołanie usługi Key Vault z aplikacji będzie zawierać prawidłowy token i zakończy się pomyślnie.