Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yerel geliştirme sırasında uygulamaların çeşitli Azure hizmetlerine erişmek için Azure'da kimlik doğrulaması yapmaları gerekir. Yerel kimlik doğrulaması için iki yaygın yaklaşım , hizmet sorumlusu kullanmak veya geliştirici hesabı kullanmaktır. Bu makalede geliştirici hesabının nasıl kullanılacağı açıklanmaktadır. İlerideki bölümlerde şunları öğrenirsiniz:
- Birden çok geliştirici hesabının izinlerini verimli bir şekilde yönetmek için Microsoft Entra gruplarını kullanma
- Kapsam izinleri için geliştirici hesaplarına rol atama
- Desteklenen yerel geliştirme araçlarında oturum açma
- Uygulama kodunuzdan geliştirici hesabı kullanarak kimlik doğrulaması
Bir uygulamanın yerel geliştirme sırasında geliştiricinin Azure kimlik bilgilerini kullanarak Azure'da kimlik doğrulaması yapması için geliştiricinin aşağıdaki geliştirici araçlarından birinden Azure'da oturum açmış olması gerekir:
- Azure Komut Satırı Arayüzü (Azure CLI)
- Azure Geliştirici CLI'sı
- Azure PowerShell
- Visual Studio Code
Azure Kimlik kitaplığı, geliştiricinin bu araçlardan birinden oturum açtığını algılayabilir. Kitaplık daha sonra Microsoft Entra erişim belirtecini araç aracılığıyla edinerek uygulamanın oturum açmış kullanıcı olarak Azure'da kimliğini doğrulayabilir.
Bu yaklaşım, kimlik doğrulama sürecini kolaylaştırmak için geliştiricinin mevcut Azure hesaplarından yararlanır. Ancak, bir geliştirici hesabının büyük olasılıkla uygulama için gerekenden daha fazla izni vardır ve bu nedenle uygulamanın üretim ortamında çalıştırdığı izinleri aşmış olur. Alternatif olarak, yerel geliştirme sırasında kullanmak üzere uygulama hizmet sorumluları oluşturabilirsiniz. Bu sorumluların kapsamı yalnızca uygulamanın ihtiyaç duyduğu erişime sahip olacak şekilde ayarlanabilir.
Yerel geliştirme için Microsoft Entra grubu oluşturma
Rolleri tek tek hizmet sorumlusu nesnelerine atamak yerine yerel geliştirmede uygulamanın ihtiyaç duyduğu rolleri (izinleri) kapsüllemek için bir Microsoft Entra grubu oluşturun. Bu yaklaşım aşağıdaki avantajları sunar:
- Her geliştirici, grup düzeyinde aynı rollere sahiptir.
- Uygulama için yeni bir rol gerekiyorsa, yalnızca uygulamanın grubuna eklenmesi gerekir.
- Ekibe yeni bir geliştirici katılırsa, geliştirici için yeni bir uygulama hizmet sorumlusu oluşturulur ve gruba eklenir ve geliştiricinin uygulama üzerinde çalışmak için doğru izinlere sahip olduğundan emin olun.
Azure portalında Microsoft Entra Id genel bakış sayfasına gidin.
Sol taraftaki menüden Tüm gruplar'ı seçin.
Gruplar sayfasında Yeni grup'a tıklayın.
Yeni grup sayfasında aşağıdaki form alanlarını doldurun:
- Grup türü: Güvenlik'i seçin.
- Grup adı: Uygulama veya ortam adına başvuru içeren grup için bir ad girin.
- Grup açıklaması: Grubun amacını açıklayan bir açıklama girin.
Gruba üye eklemek için Üyeler'in altında Üye seçilmedi bağlantısını seçin.
Açılan açılır panelde, daha önce oluşturduğunuz hizmet sorumlusunu arayın ve filtrelenen sonuçlardan seçin. Seçiminizi onaylamak için panelin altındaki Seç düğmesini seçin.
Grubu oluşturmak ve Tüm gruplar sayfasına dönmek için Yeni grup sayfasının alt kısmındaki Oluştur'u seçin. Yeni grubu listede görmüyorsanız, bir dakika bekleyin ve sayfayı yenileyin.
Gruba rol atama
Ardından, uygulamanızın hangi kaynaklar üzerinde hangi rollere (izinlere) ihtiyacı olduğunu belirleyin ve bu rolleri oluşturduğunuz Microsoft Entra grubuna atayın. Gruplara kaynak, kaynak grubu veya abonelik kapsamında bir rol atanabilir. Bu örnekte, çoğu uygulama tüm Azure kaynaklarını tek bir kaynak grubunda gruplandırdığından kaynak grubu kapsamında rollerin nasıl atandığı gösterilmektedir.
Azure portalında, uygulamanızı içeren kaynak grubunun Genel Bakış sayfasına gidin.
Sol gezinti bölmesinden Erişim denetimi (IAM) seçin.
Erişim denetimi (IAM) sayfasında + Ekle'yi ve ardından açılan menüden Rol ataması ekle'yi seçin. Rol ataması ekle sayfasında rolleri yapılandırmak ve atamak için birkaç sekme bulunur.
Rol sekmesinde, atamak istediğiniz rolü bulmak için arama kutusunu kullanın. Rolü seçin ve ardından İleri'yi seçin.
Üyeler sekmesinde:
- Değere erişim ata için Kullanıcı, grup veya hizmet sorumlusu öğesini seçin.
- Üyeler değeri için + Üyeleri seç'i seçerek Üyeleri seçin açılır penceresini açın.
- Daha önce oluşturduğunuz Microsoft Entra grubunu arayın ve filtrelenen sonuçlardan seçin. Grubu seçmek ve açılır menü panelini kapatmak için Seç'i seçin.
- Gözden Geçir ve Ata'yı, Üyeler sekmesinin alt kısmında seçin.
Gözden geçir ve ata sekmesinde, sayfanın alt kısmında Gözden geçir ve ata seçeneğini seçin.
Geliştirici araçlarını kullanarak Azure'da oturum açma
Ardından, geliştirme ortamınızda kimlik doğrulaması gerçekleştirmek için kullanılabilecek çeşitli geliştirici araçlarından birini kullanarak Azure'da oturum açın. Kimlik doğrulaması yaptığınız hesap, daha önce oluşturup yapılandırdığınız Microsoft Entra grubunda da bulunmalıdır.
Geliştiriciler, Microsoft Entra Id'de kimlik doğrulaması yapmak için Azure CLI kullanabilir. veya DefaultAzureCredential kullanan AzureCliCredential uygulamalar, yerel olarak çalıştırılırken uygulama isteklerinin kimliğini doğrulamak için bu hesabı kullanabilir.
Azure CLI ile kimlik doğrulaması yapmak için komutunu çalıştırın az login . Varsayılan web tarayıcısına sahip bir sistemde Azure CLI, kullanıcının kimliğini doğrulamak için tarayıcıyı başlatır.
az login
Varsayılan web tarayıcısı olmayan sistemler için az login komutu cihaz kodu kimlik doğrulama akışını kullanır. Kullanıcı ayrıca --use-device-code bağımsız değişkenini belirterek bir tarayıcı başlatmak yerine Azure CLI'yi cihaz kodu akışını kullanmaya zorlayabilir.
az login --use-device-code
Uygulamanızdan Azure hizmetlerinde kimlik doğrulaması
Azure Kimlik kitaplığı, çeşitli senaryoları ve Microsoft Entra kimlik doğrulama akışlarını destekleyen TokenCredential uygulamalarını sağlar. Aşağıdaki adımlar, kullanıcı hesaplarıyla yerel olarak çalışırken DefaultAzureCredential veya belirli bir geliştirme aracı kimlik bilgilerinin nasıl kullanılacağını gösterir.
Tavsiye
Ekibiniz Azure'da kimlik doğrulaması yapmak için birden çok geliştirme aracı kullandığında, araca özgü kimlik bilgileri yerine yerel geliştirme için iyileştirilmiş bir örneğini DefaultAzureCredential tercih edin.
Kodu uygulama
uygulamanıza @azure/kimlik paketini ekleyin.
npm install @azure/identityUyarı
VisualStudioCodeCredentialkullanmak istiyorsanız @azure/identity-vscode eklenti paketini de yüklemeniz gerekir. Ardından kimlik bilgilerini açıkça yükleyin. Bir örnek için bkz. @azure/identity-vscode README.Senaryonuza göre kimlik bilgisi uygulamalarından birini seçin.
- Geliştirme aracınıza özgü bir kimlik bilgisi kullanın: Bu seçenek tek kişi veya tek araç senaryoları için en iyisidir.
- Herhangi bir geliştirme aracında kullanılabilen bir kimlik bilgisi kullanın: Bu seçenek açık kaynak projeler ve çeşitli araç ekipleri için en iyisidir.
Geliştirme aracınıza özgü bir kimlik bilgisi kullanma
Belirli bir geliştirme aracına karşılık gelen bir TokenCredential örneğini Azure hizmet istemcisi oluşturucusuna, örneğin AzureCliCredential, geçirin.
import { AzureCliCredential } from "@azure/identity";
import { BlobServiceClient } from "@azure/storage-blob";
const credential = new AzureCliCredential();
const client = new BlobServiceClient(
"https://<storage-account-name>.blob.core.windows.net",
credential
);
Herhangi bir geliştirme aracında kullanılabilen bir kimlik bilgisi kullanın
Tüm yerel geliştirme araçları için iyileştirilmiş bir DefaultAzureCredential örnek kullanın. Bu örnek, ortam değişkeninin AZURE_TOKEN_CREDENTIALS olarak ayarlanmasını devgerektirir. Daha fazla bilgi için bkz . Kimlik bilgisi türü kategorisini dışlama.
import { DefaultAzureCredential } from "@azure/identity";
import { BlobServiceClient } from "@azure/storage-blob";
// Set environment variable AZURE_TOKEN_CREDENTIALS to "dev"
const credential = new DefaultAzureCredential({
requiredEnvVars: ["AZURE_TOKEN_CREDENTIALS"]
});
const client = new BlobServiceClient(
"https://<storage-account-name>.blob.core.windows.net",
credential
);