Háttérszolgáltatások védelme ügyféltanúsítvány-hitelesítéssel az Azure API Managementben

A KÖVETKEZŐRE VONATKOZIK: Minden API Management-szint

Az API Management lehetővé teszi az API háttérszolgáltatásához való hozzáférést ügyféltanúsítványok és kölcsönös TLS-hitelesítés használatával. Ez az útmutató bemutatja, hogyan kezelheti a tanúsítványokat egy Azure API Management szolgáltatáspéldányban az Azure Portal használatával. Azt is ismerteti, hogyan konfigurálhat egy API-t úgy, hogy tanúsítványt használjon egy háttérszolgáltatás eléréséhez.

Az API Management REST API használatával is kezelheti az API Management-tanúsítványokat.

Tanúsítványbeállítások

Az API Management két lehetőséget kínál a háttérszolgáltatásokhoz való hozzáférés biztonságossá tételéhez használt tanúsítványok kezelésére:

A Key Vault-tanúsítványok használata azért ajánlott, mert segít az API Management biztonságának javításában:

  • A kulcstartókban tárolt tanúsítványok a szolgáltatások között újra felhasználhatók
  • Részletes hozzáférési szabályzatok alkalmazhatók a kulcstartókban tárolt tanúsítványokra
  • A kulcstartóban frissített tanúsítványok automatikusan el lesznek forgatva az API Managementben. A key vault frissítése után az API Management tanúsítványa 4 órán belül frissül. Manuálisan is frissítheti a tanúsítványt az Azure Portalon vagy a felügyeleti REST API-val.

Előfeltételek

Feljegyzés

Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Az első lépésekhez tekintse meg az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

  • Ha még nem hozott létre API Management szolgáltatáspéldányt, olvassa el az API Management szolgáltatáspéldány létrehozása című témakört.

  • Az ügyféltanúsítvány-hitelesítéshez konfigurálnia kell a háttérszolgáltatást. A tanúsítványhitelesítés Azure-alkalmazás szolgáltatásban való konfigurálásához tekintse meg ezt a cikket.

  • Hozzá kell férnie a tanúsítványhoz és a jelszóhoz egy Azure-kulcstartóban való felügyelethez, vagy fel kell töltenie az API Management szolgáltatásba. A tanúsítványnak PFX formátumban kell lennie. Önaláírt tanúsítványok engedélyezettek.

    Ha önaláírt tanúsítványt használ:

A Key Vault integrációjának előfeltételei

  1. Ha még nincs kulcstartója, hozzon létre egyet. A kulcstartó létrehozásának lépéseit a rövid útmutatóban találja : Kulcstartó létrehozása az Azure Portal használatával.

    A tanúsítvány kulcstartóba való létrehozásához vagy importálásához tekintse meg a következő rövid útmutatót: Tanúsítvány beállítása és lekérése az Azure Key Vaultból az Azure Portal használatával.

  2. Engedélyezze a rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitást az API Management-példányban.

A Key Vaulthoz való hozzáférés konfigurálása

  1. A portálon keresse meg a kulcstartót.

  2. A bal oldali menüben válassza az Access-konfigurációt, és jegyezze fel a konfigurált engedélymodellt.

  3. Az engedélymodelltől függően konfiguráljon kulcstartó-hozzáférési szabályzatot vagy Azure RBAC-hozzáférést egy API Management által felügyelt identitáshoz.

    Kulcstartó hozzáférési szabályzatának hozzáadása:

    1. A bal oldali menüben válassza az Access-szabályzatok lehetőséget.
    2. Az Access-szabályzatok lapon válassza a + Létrehozás lehetőséget.
    3. Az Engedélyek lap Titkos engedélyek csoportjában válassza a Beolvasás és a Lista lehetőséget, majd a Tovább gombot.
    4. Az Egyszerű lapon válassza ki az egyszerű nevet, keresse meg a felügyelt identitás erőforrásnevét, majd válassza a Tovább gombot. Ha rendszer által hozzárendelt identitást használ, az egyszerű az API Management-példány neve.
    5. Kattintson ismét a Tovább gombra. A Véleményezés + létrehozás lapon válassza a Létrehozás lehetőséget.

    Az Azure RBAC-hozzáférés konfigurálása:

    1. A bal oldali menüben válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
    2. A Hozzáférés-vezérlés (IAM) lapon válassza a Szerepkör-hozzárendelés hozzáadása lehetőséget.
    3. A Szerepkör lapon válassza a Key Vault titkos kulcsainak felhasználója lehetőséget.
    4. A Tagok lapon válassza a Felügyelt identitás>+ Tagok kijelölése lehetőséget.
    5. A Felügyelt identitás kiválasztása lapon válassza ki a rendszer által hozzárendelt felügyelt identitást vagy az API Management-példányhoz társított felhasználó által hozzárendelt felügyelt identitást, majd válassza a Kiválasztás lehetőséget.
    6. Válassza az Áttekintés + hozzárendelés lehetőséget.

A Key Vault tűzfalának követelményei

Ha a Key Vault tűzfala engedélyezve van a kulcstartón, a következő további követelmények teljesülnek:

  • A kulcstartó eléréséhez az API Management-példány rendszer által hozzárendelt felügyelt identitását kell használnia.

  • A Key Vault tűzfalában engedélyezze a Megbízható Microsoft-szolgáltatások engedélyezését a tűzfal lehetőség megkerüléséhez.

  • Győződjön meg arról, hogy a helyi ügyfél IP-címe átmenetileg hozzáférhet a kulcstartóhoz, miközben kiválaszt egy tanúsítványt vagy titkos kulcsot, amelyet fel szeretne adni az Azure API Managementbe. További információ: Az Azure Key Vault hálózati beállításainak konfigurálása.

    A konfiguráció befejezése után letilthatja az ügyfél címét a Key Vault tűzfalán.

A virtuális hálózatra vonatkozó követelmények

Ha az API Management-példány virtuális hálózaton van üzembe helyezve, konfigurálja a következő hálózati beállításokat is:

  • Szolgáltatásvégpont engedélyezése az Azure Key Vaultban az API Management alhálózaton.
  • Konfiguráljon egy hálózati biztonsági csoportot (NSG- szabályt) az AzureKeyVault és az AzureActiveDirectory szolgáltatáscímkék kimenő forgalmának engedélyezéséhez.

További információ: Hálózati konfiguráció az Azure API Management virtuális hálózaton való beállításakor.

Key Vault-tanúsítvány hozzáadása

Tekintse meg a Key Vault integrációjának előfeltételeit.

Fontos

Amikor kulcstartó-tanúsítványt ad hozzá az API Management-példányhoz, rendelkeznie kell a kulcstartó titkos kulcsainak listázásához szükséges engedélyekkel.

Figyelemfelhívás

Ha key vault-tanúsítványt használ az API Managementben, ügyeljen arra, hogy ne törölje a kulcstartó eléréséhez használt tanúsítványt, kulcstartót vagy felügyelt identitást.

Key Vault-tanúsítvány hozzáadása az API Managementhez:

  1. Az Azure Portalon keresse meg az API Management-példányt.

  2. A Biztonság területen válassza a Tanúsítványok lehetőséget.

  3. Válassza a Tanúsítványok>+ Hozzáadás lehetőséget.

  4. Az Azonosító mezőben adjon meg egy tetszőleges nevet.

  5. A Tanúsítvány területen válassza a Key Vault lehetőséget.

  6. Adja meg egy kulcstartó-tanúsítvány azonosítóját, vagy válassza a Kiválasztás lehetőséget egy tanúsítvány kulcstartóból való kiválasztásához.

    Fontos

    Ha saját maga adja meg a key vault tanúsítványazonosítóját, győződjön meg arról, hogy nem rendelkezik verzióinformációval. Ellenkező esetben a tanúsítvány nem forog automatikusan az API Managementben a kulcstartó frissítését követően.

  7. Az ügyfélidentitásban válasszon ki egy rendszer által hozzárendelt vagy egy meglévő, felhasználó által hozzárendelt felügyelt identitást. Megtudhatja, hogyan vehet fel vagy módosíthat felügyelt identitásokat az API Management szolgáltatásban.

    Feljegyzés

    Az identitásnak engedélyekre van szüksége a tanúsítvány kulcstartóból való lekéréséhez és listázásához. Ha még nem konfigurálta a kulcstartóhoz való hozzáférést, az API Management kéri, hogy automatikusan konfigurálhassa az identitást a szükséges engedélyekkel.

  8. Válassza a Hozzáadás lehetőséget.

    Képernyőkép a Key Vault-tanúsítvány api Managementhez való hozzáadásáról a portálon.

  9. Válassza a Mentés lehetőséget.

Tanúsítvány feltöltése

Ügyféltanúsítvány feltöltése az API Managementbe:

  1. Az Azure Portalon keresse meg az API Management-példányt.

  2. A Biztonság területen válassza a Tanúsítványok lehetőséget.

  3. Válassza a Tanúsítványok>+ Hozzáadás lehetőséget.

  4. Az Azonosító mezőben adjon meg egy tetszőleges nevet.

  5. A Tanúsítvány területen válassza az Egyéni lehetőséget.

  6. Tallózással válassza ki a tanúsítvány .pfx fájlját, és adja meg a jelszavát.

  7. Válassza a Hozzáadás lehetőséget.

    Képernyőkép egy ügyféltanúsítvány api Managementbe való feltöltéséről a portálon.

  8. Válassza a Mentés lehetőséget.

A tanúsítvány feltöltése után megjelenik a Tanúsítványok ablakban. Ha sok tanúsítványsal rendelkezik, jegyezze fel a kívánt tanúsítvány ujjlenyomatát annak érdekében, hogy egy API-t ügyféltanúsítvány használatára konfiguráljon az átjáróhitelesítéshez.

API konfigurálása ügyféltanúsítvány használatára átjáróhitelesítéshez

  1. Az Azure Portalon keresse meg az API Management-példányt.

  2. Az API-k alatt válassza az API-kat.

  3. Válasszon egy API-t a listából.

  4. A Tervezés lapon válassza a Szerkesztő ikont a Háttér szakaszban.

  5. Az átjáró hitelesítő adatai között válassza az Ügyféltanúsítvány lehetőséget , és válassza ki a tanúsítványt a legördülő listából.

  6. Válassza a Mentés lehetőséget.

    Ügyféltanúsítvány használata átjáróhitelesítéshez

Figyelemfelhívás

Ez a módosítás azonnal érvénybe lép, és az API műveleteinek hívásai a tanúsítványt használják a háttérkiszolgálón való hitelesítéshez.

Tipp.

Ha egy API háttérszolgáltatásának átjáróhitelesítéséhez tanúsítványt ad meg, az az API szabályzatának részévé válik, és megtekinthető a szabályzatszerkesztőben.

Tanúsítványlánc érvényesítésének letiltása önaláírt tanúsítványok esetén

Ha önaláírt tanúsítványokat használ, le kell tiltania a tanúsítványlánc érvényesítését az API Management számára a háttérrendszerrel való kommunikációhoz. Ellenkező esetben egy 500-os hibakódot ad vissza. Ennek konfigurálásához használhatja az New-AzApiManagementBackend (új háttérrendszerhez) vagy Set-AzApiManagementBackend (meglévő háttérrendszerhez) PowerShell-parancsmagokat, és beállíthatja a paramétert a -SkipCertificateChainValidation következőre True.

$context = New-AzApiManagementContext -resourcegroup 'ContosoResourceGroup' -servicename 'ContosoAPIMService'
New-AzApiManagementBackend -Context  $context -Url 'https://contoso.com/myapi' -Protocol http -SkipCertificateChainValidation $true

A tanúsítványlánc érvényesítését a háttérbeli REST API-val is letilthatja.

Ügyféltanúsítvány törlése

Ha törölni szeretne egy tanúsítványt, jelölje ki, majd válassza a Törlés lehetőséget a helyi menüben (...).

Tanúsítvány törlése

Fontos

Ha a tanúsítványra bármilyen szabályzat hivatkozik, megjelenik egy figyelmeztető képernyő. A tanúsítvány törléséhez először el kell távolítania a tanúsítványt a használatára konfigurált szabályzatokból.

Következő lépések