Sdílet prostřednictvím


Ověřování aplikací Java ve službách Azure pomocí knihovny identit Azure

Aplikace můžou používat knihovnu identit Azure k ověření v Microsoft Entra ID, což umožňuje aplikacím přístup ke službám a prostředkům Azure. Tento požadavek na ověřování platí, jestli je aplikace nasazená do Azure, hostované místně nebo spuštěné místně na vývojářské pracovní stanici. Tento článek popisuje doporučené přístupy k ověřování aplikace pro Microsoft Entra ID v různých prostředích při používání Azure SDK klientských knihoven.

Ověřování na základě tokenů prostřednictvím Microsoft Entra ID je doporučeným přístupem k ověřování aplikací pro Azure místo použití připojovacích řetězců nebo možností založených na klíčích. Knihovna identit Azure poskytuje třídy, které podporují ověřování na základě tokenů a umožňují aplikacím ověřovat Azure prostředky bez ohledu na to, jestli aplikace běží místně, na Azure nebo na místním serveru.

Výhody ověřování založeného na tokenech

Ověřování na základě tokenů nabízí následující výhody oproti připojovacím řetězcům:

  • Ověřování na základě tokenů zajišťuje, že k němu mají přístup jenom konkrétní aplikace určené pro přístup k Azure prostředku, zatímco kdokoli nebo jakákoli aplikace s connection string se může připojit k Azure prostředku.
  • Ověřování na základě tokenů umožňuje omezit přístup k prostředkům Azure jenom na konkrétní oprávnění potřebná aplikací. Tento přístup se řídí principem nejnižšího oprávnění. Naproti tomu connection string uděluje úplná práva na prostředek Azure.
  • Při použití spravované identity pro ověřování na základě tokenů za vás Azure zpracovává funkce správy, takže se nemusíte starat o úlohy, jako je zabezpečení nebo obměna tajných kódů. Díky tomuto přístupu je aplikace bezpečnější, protože neexistuje žádný connection string nebo tajný kód aplikace, který by se mohl ohrozit.
  • Knihovna Azure Identity za vás získává a spravuje Microsoft Entra tokeny.

Omezte použití připojovacích řetězců na scénáře, kdy ověřování založené na tokenech není možnost, počáteční aplikace pro testování konceptu nebo prototypy vývoje, které nepřistupují k produkčním nebo citlivým datům. Pokud je to možné, použijte třídy ověřování založené na tokenech, které jsou k dispozici v knihovně identit Azure, k ověřování pomocí prostředků Azure.

Ověřování v různých prostředích

Konkrétní typ ověřování na základě tokenů, který by aplikace měla použít k ověření Azure prostředků, závisí na tom, kde aplikace běží. Následující diagram obsahuje pokyny pro různé scénáře a prostředí:

diagram znázorňující doporučené strategie ověřování na základě tokenů pro aplikaci v závislosti na tom, kde je spuštěná.

Když je aplikace:

Ověřování pro Azure hostované aplikace

Když hostujete aplikaci na Azure, může používat spravované identity k ověření v Azure prostředcích, aniž by bylo nutné spravovat přihlašovací údaje. K dispozici jsou dva typy spravovaných identit: přiřazené uživatelem a přiřazené systémem.

Použití spravované identity přiřazené uživatelem

Můžete vytvořit uživatelem přiřazenou spravovanou identitu jako samostatný zdroj Azure. Potom ho můžete přiřadit k jednomu nebo více prostředkům Azure, aby tyto prostředky mohly sdílet stejnou identitu a oprávnění. Pokud chcete provést ověření pomocí spravované identity přiřazené uživatelem, vytvořte ji, přiřaďte ji k prostředku Azure a potom nakonfigurujte aplikaci tak, aby tuto identitu používala k ověřování zadáním ID klienta, ID prostředku nebo ID objektu.

Použití spravované identity přiřazené systémem

Spravovanou identitu přiřazenou systémem můžete povolit přímo v Azure prostředku. Identita je svázaná s životním cyklem tohoto prostředku a při odstranění prostředku se automaticky odstraní. Pokud chcete provést ověření pomocí spravované identity přiřazené systémem, povolte identitu ve vašem prostředku Azure a nakonfigurujte aplikaci tak, aby tuto identitu používala k ověřování.

Ověřování během místního vývoje

Během místního vývoje můžete ověřit prostředky Azure pomocí přihlašovacích údajů pro vývojáře, makléře nebo služebního principu. Pomocí jedné z těchto metod můžete otestovat logiku ověřování aplikace bez nasazení do Azure.

Použití přihlašovacích údajů pro vývojáře

K ověření Azure prostředků během místního vývoje můžete použít vlastní Azure přihlašovací údaje. Obvykle používáte vývojový nástroj, například Azure CLI, rozhraní příkazového řádku pro vývojáře Azure, Azure PowerShell, Visual Studio Code nebo IntelliJ IDEA. Tyto nástroje můžou vaší aplikaci poskytnout potřebné tokeny pro přístup ke službám Azure. Tato metoda je pohodlná, ale měla by se používat pouze pro účely vývoje.

Použití zprostředkovatele

Zprostředkované ověřování shromažďuje přihlašovací údaje uživatele pomocí zprostředkovatele ověřování systému k ověření aplikace. Systémový zprostředkovatel ověřování běží na počítači uživatele a zajišťuje navazování spojení a údržbu tokenů pro všechny připojené účty.

Použijte služebního hlavního prvku

Můžete vytvořit služební principál v tenantovi Microsoft Entra pro reprezentaci aplikace a ověřovat se vůči prostředkům Azure. Aplikaci můžete nakonfigurovat tak, aby používala přihlašovací údaje instančního objektu během místního vývoje. Tato metoda je bezpečnější než použití přihlašovacích údajů vývojáře a blíží se způsobu ověřování vaší aplikace v produkčním prostředí. Je ale stále méně ideální než použití spravované identity kvůli potřebě tajných kódů.

Ověřování pro aplikace hostované místně

U aplikací hostovaných místně můžete použít služební principál k autentizaci prostředků Azure. To zahrnuje vytvoření instančního objektu v Microsoft Entra ID, přiřazení potřebných oprávnění a konfiguraci aplikace tak, aby používala své přihlašovací údaje. Tato metoda umožňuje vaší místní aplikaci bezpečně přistupovat ke službám Azure.