Aracılığıyla paylaş


Azure Kimlik kitaplığını kullanarak Azure hizmetleri için Java uygulamaların kimliğini doğrulama

Uygulamalar, Microsoft Entra ID kimlik doğrulaması yapmak için Azure Kimlik kitaplığını kullanabilir ve bu da uygulamaların Azure hizmetlere ve kaynaklara erişmesine olanak tanır. Bu kimlik doğrulama gereksinimi, uygulamanın Azure dağıtılıp dağıtılmadığını, şirket içinde barındırılıp barındırılmadığını veya bir geliştirici iş istasyonunda yerel olarak çalıştırılmasını sağlar. Bu makalede, Azure SDK istemci kitaplıklarını kullanırken farklı ortamlarda Microsoft Entra ID için bir uygulamanın kimliğini doğrulamak için önerilen yaklaşımlar açıklanmaktadır.

Microsoft Entra ID aracılığıyla belirteç tabanlı kimlik doğrulaması, bağlantı dizelerini veya anahtar tabanlı seçenekleri kullanmak yerine uygulamaların Azure kimlik doğrulaması için önerilen yaklaşımdır. Azure Identity kitaplığı belirteç tabanlı kimlik doğrulamasını destekleyen sınıflar sağlar ve uygulamanın yerel olarak, Azure veya şirket içi sunucuda çalıştırıldığından bağımsız olarak uygulamaların Azure kaynaklarda kimlik doğrulaması yapmasını sağlar.

Belirteç tabanlı kimlik doğrulamasının avantajları

Belirteç tabanlı kimlik doğrulaması, bağlantı dizelerine göre aşağıdaki avantajları sunar:

  • Belirteç tabanlı kimlik doğrulaması yalnızca Azure kaynağına erişmeyi amaçlayan belirli uygulamaların bu kaynağa erişebilmesini sağlarken, connection string olan herkes veya herhangi bir uygulama Azure bir kaynağa bağlanabilir.
  • Belirteç tabanlı kimlik doğrulaması, Azure kaynak erişimini yalnızca uygulama için gereken belirli izinlerle sınırlamanıza olanak tanır. Bu yaklaşım en az ayrıcalık ilkesini izler. Buna karşılık, bir bağlantı dizesi Azure kaynağı için tüm yetkilere sahiptir.
  • Belirteç tabanlı kimlik doğrulaması için managed identity kullandığınızda Azure sizin için yönetim işlevlerini işler, böylece gizli dizileri güvenli hale getirme veya döndürme gibi görevler konusunda endişelenmeniz gerekmez. Bu yaklaşım, tehlikeye atılacak bağlantı dizesi veya uygulama sırrı bulunmadığından uygulamayı daha güvenli hale getirir.
  • Azure Kimlik kitaplığı sizin için Microsoft Entra belirteçleri alır ve yönetir.

Bağlantı dizelerinin kullanımını belirteç tabanlı kimlik doğrulamasının bir seçenek olmadığı senaryolarla, ilk kavram kanıtı uygulamalarıyla veya üretim veya hassas verilere erişmeyen geliştirme prototipleriyle sınırlayın. Mümkün olduğunda, Azure kaynaklarda kimlik doğrulaması yapmak için Azure Kimlik kitaplığında bulunan belirteç tabanlı kimlik doğrulama sınıflarını kullanın.

Farklı ortamlarda kimlik doğrulaması

Bir uygulamanın Azure kaynaklarda kimlik doğrulaması yapmak için kullanması gereken belirteç tabanlı kimlik doğrulaması türü, uygulamanın nerede çalıştığına bağlıdır. Aşağıdaki diyagramda farklı senaryolar ve ortamlar için rehberlik sağlanır:

Çalıştığı yere bağlı olarak bir uygulama için önerilen belirteç tabanlı kimlik doğrulama stratejilerini gösteren diyagram.

Bir uygulama şu durumlarda:

  • Azure üzerinde barındırılan: Uygulamanın, yönetilen kimlik kullanarak Azure kaynaklarında kimlik doğrulaması yapması gerekir. Daha fazla bilgi için Azure barındırılan uygulamalar için Authentication bölümüne bakın.
  • Geliştirme sırasında yerel olarak çalıştırmak: Uygulama, bir geliştirici hesabı, broker veya hizmet sorumlusu kullanarak Azure'da kimlik doğrulaması yapabilir. Daha fazla bilgi için Yerel geliştirme sırasında kimlik doğrulaması bölümüne bakın.
  • Şirket İçi Barındırma: Uygulama, Azure kaynaklarında kimlik doğrulaması yaparken bir uygulama hizmet ilkesi veya Azure Arc durumunda yönetilen kimlik kullanmalıdır. Şirket içi iş akışları, şirket içinde barındırılan uygulamalar için Kimlik Doğrulama sayfasında daha ayrıntılı olarak ele alınmaktadır.

Azure barındırılan uygulamalar için kimlik doğrulaması

Uygulamanızı Azure barındırdığınızda, kimlik bilgilerini yönetmeye gerek kalmadan Azure kaynaklarda kimlik doğrulaması yapmak için yönetilen kimlikleri kullanabilir. İki tür yönetilen kimlik kullanılabilir: kullanıcı tarafından atanan ve sistem tarafından atanan.

Kullanıcı tarafından atanan yönetilen kimlik kullanma

Tek başına Azure kaynağı olarak kullanıcı tarafından atanan bir yönetilen kimlik oluşturabilirsiniz. Daha sonra bir veya daha fazla Azure kaynağına atayabilirsiniz, böylece bu kaynaklar aynı kimliği ve izinleri paylaşabilir. Kullanıcı tarafından atanan yönetilen kimliği kullanarak kimlik doğrulaması yapmak için, kimliği oluşturun, Azure kaynağınıza atayın ve ardından uygulamanızı istemci kimliğini, kaynak kimliğini veya nesne kimliğini belirterek kimlik doğrulaması için bu kimliği kullanacak şekilde yapılandırın.

Sistem tarafından atanan yönetilen kimlik kullanma

Sistem tarafından atanan yönetilen kimliği doğrudan bir Azure kaynağında etkinleştirebilirsiniz. Kimlik, bu kaynağın yaşam döngüsüne bağlıdır ve kaynak silindiğinde otomatik olarak silinir. Sistem tarafından atanan yönetilen kimliği kullanarak kimlik doğrulaması yapmak için, Azure kaynağınızda kimliği etkinleştirin ve ardından uygulamanızı kimlik doğrulaması için bu kimliği kullanacak şekilde yapılandırın.

Yerel geliştirme sırasında kimlik doğrulaması

Yerel geliştirme sırasında geliştirici kimlik bilgilerinizi, aracınızı veya hizmet sorumlunuzu kullanarak Azure kaynaklarda kimlik doğrulaması yapabilirsiniz. Bu yöntemlerden birini kullanarak uygulamanızın kimlik doğrulama mantığını Azure dağıtmadan test edebilirsiniz.

Geliştirici kimlik bilgilerini kullanma

Yerel geliştirme sırasında Azure kaynaklarda kimlik doğrulaması yapmak için kendi Azure kimlik bilgilerinizi kullanabilirsiniz. Genellikle Azure CLI, Azure Developer CLI, Azure PowerShell, Visual Studio Code veya IntelliJ IDEA gibi bir geliştirme aracı kullanırsınız. Bu araçlar, uygulamanıza Azure hizmetlere erişmek için gerekli belirteçleri sağlayabilir. Bu yöntem kullanışlıdır ancak yalnızca geliştirme amacıyla kullanmanız gerekir.

Bir aracı kullanın

Aracılı kimlik doğrulaması, bir uygulamanın kimliğini doğrulamak için sistem kimlik doğrulama aracısını kullanarak kullanıcı kimlik bilgilerini toplar. Sistem kimlik doğrulama aracısı, kullanıcının makinesinde çalışır ve tüm bağlı hesaplar için kimlik doğrulama handshake işlemlerini ve token yönetimini yönetir.

Hizmet ilkesi kullanma

Bir uygulamayı temsil etmek ve Azure kaynaklarda kimlik doğrulaması yapmak için Microsoft Entra bir kiracıda hizmet sorumlusu oluşturabilirsiniz. Uygulamanızı yerel geliştirme sırasında hizmet sorumlusu kimlik bilgilerini kullanacak şekilde yapılandırabilirsiniz. Bu yöntem, geliştirici kimlik bilgilerini kullanmaktan daha güvenlidir ve uygulamanızın üretimde kimlik doğrulamasına daha yakındır. Ancak, gizli bilgilere duyulan ihtiyaç nedeniyle yönetilen kimlik kullanmak kadar ideal değildir.

Şirket içinde barındırılan uygulamalar için kimlik doğrulaması

Şirket içinde barındırılan uygulamalarda, Azure kaynaklarda kimlik doğrulaması yapmak için bir hizmet sorumlusu kullanabilirsiniz. Bu, Microsoft Entra ID bir hizmet sorumlusu oluşturmayı, gerekli izinleri atamayı ve uygulamanızı kimlik bilgilerini kullanacak şekilde yapılandırmayı içerir. Bu yöntem, şirket içi uygulamanızın Azure hizmetlere güvenli bir şekilde erişmesini sağlar.