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.
Şunlar için geçerlidir: Azure Logic Apps (Tüketim)
API'lerinize yapılan çağrıların güvenliğini artırmak için, Kodunuzu güncelleştirmeniz gerekmeyecek şekilde Azure portalı aracılığıyla Microsoft Entra kimlik doğrulamasını ayarlayabilirsiniz. İsterseniz, API'nizin kodu aracılığıyla kimlik doğrulamasının gerekli ve zorunlu olmasını da sağlayabilirsiniz.
Kimlik doğrulamasını aşağıdaki yollarla ekleyebilirsiniz:
Kod değişikliği yok: Kodunuzu güncelleştirmeniz veya API'nizi yeniden dağıtmanız gerekmemesi için Api'nizi Azure portalı üzerinden Microsoft Entra Id ile koruyun.
Not
Varsayılan olarak, Azure portalında seçtiğiniz Microsoft Entra kimlik doğrulaması ayrıntılı yetkilendirme sağlamaz. Örneğin, bu kimlik doğrulaması API'nizi belirli bir kullanıcı veya uygulama için değil yalnızca belirli bir kiracıya kilitler.
API'nizin kodunu güncelleştirme: Kod aracılığıyla sertifika kimlik doğrulamasını veya Microsoft Entra kimlik doğrulamasını zorunlu kılarak API'nizi koruyun.
Kodu değiştirmeden API'nize yapılan çağrıların kimliğini doğrulama
Bu yöntemin genel adımları şunlardır:
Biri mantıksal uygulama kaynağınız ve diğeri de web uygulamanız (veya API uygulaması) için iki Microsoft Entra uygulama kimliği (uygulama kaydı) oluşturun.
API'nize yapılan çağrıların kimliğini doğrulamak için mantıksal uygulamanızın Microsoft Entra uygulama kimliğiyle ilişkili hizmet sorumlusunun kimlik bilgilerini (istemci kimliği ve gizli dizi) kullanın.
Mantıksal uygulamanızın iş akışı tanımına uygulama kimliklerini ekleyin.
Bölüm 1: Mantıksal uygulamanız için Microsoft Entra uygulama kimliği oluşturma
Mantıksal uygulama kaynaklarınız, Microsoft Entra ID'ye kimlik doğrulaması yapmak için bu Microsoft Entra uygulama kimliğini kullanır. Bu kimliği kiracınız için yalnızca bir kez ayarlamanız gerekir. Örneğin, her mantıksal uygulama için benzersiz kimlikler oluştursanız bile tüm mantıksal uygulamalarınız için aynı kimliği kullanmayı seçebilirsiniz. Bu kimlikleri Azure portalında ayarlayabilir veya PowerShell'i kullanabilirsiniz.
Azure portalı arama kutusunda Microsoft Entra Id'yi bulun ve seçin.
Web uygulamanız veya API uygulamanızla aynı kiracıda olduğunuzu onaylayın.
İpucu
Kiracılar arasında geçiş yapmak için Azure başlık çubuğundan profilinizi açın ve Dizini değiştir'i seçin.
Kiracı kaynağı menüsünde, Yönet'in altında Uygulama kayıtları'nı seçin.
Uygulama kayıtları sayfasında kiracınızdaki tüm uygulama kayıtları gösterilir. Yalnızca uygulama kayıtlarınızı görüntülemek için Sahip olunan uygulamalar'ı seçin.
Araç çubuğundan, Yeni kayıt öğesini seçin.
Uygulama kaydetme sayfasında şu adımları izleyin:
Ad alanında mantıksal uygulamanızın uygulama kimliği için kolay ve kullanıcıya yönelik bir ad sağlayın.
Desteklenen hesap türleri'nin altında, uygulama kimliğini kullanabilen veya API'nize erişim elde eden hesap türlerini en iyi açıklayan seçeneği belirleyin.
Yeniden Yönlendirme URI'si altında, platform olarak Web'i seçin. Bu seçeneğin yanında, kimlik doğrulama yanıtını döndürmek için konum için benzersiz bir URL sağlayın.
İşiniz bittiğinde Kaydet'i seçin.
Sahip olunan uygulamalar sekmesi artık oluşturduğunuz uygulama kimliğini gösterir. Bu kimlik görünmüyorsa, araç çubuğunda Yenile'yi seçin.
Uygulama kayıtları listesinden yeni uygulama kimliğinizi seçin.
Uygulama kimliği gezinti menüsünden Genel Bakış'ı seçin.
Genel Bakış sayfasında, Temel Bileşenler'in altında Uygulama (istemci) Kimliğini kopyalayıp 3. Bölümde mantıksal uygulamanızın istemci kimliği olarak kullanmak üzere kaydedin.
Uygulama kimliği menüsündeki Yönet'in altında Sertifikalar ve gizli diziler'i seçin.
İstemci gizli dizileri sayfasında Yeni istemci gizli dizisi'ni seçin.
İstemci gizli dizisi ekle bölmesinde, Açıklama için gizli diziniz için bir ad belirtin. Süre Sonu için sırrınız veya gizli anahtarınız için bir süre seçin. İşiniz bittiğinde Ekle'yi seçin.
Oluşturduğunuz gizli dizi, mantıksal uygulamanızın uygulama kimliğinin "gizli dizisi" veya parolası olarak görev yapar.
Sertifikalar ve gizli diziler sayfasındaki İstemci gizli dizileri sekmesinde gizli diziniz artık bir gizli dizi değeri ve gizli dizi kimliğiyle birlikte görünür.
Gizli dizi değerini daha sonra kullanmak üzere kopyalayın. 3. Bölümde mantıksal uygulamanızı yapılandırırken, bu değeri "gizli dizi" veya parola olarak belirtirsiniz.
Bölüm 2: Web uygulamanız veya API uygulamanız için Microsoft Entra uygulama kimliği oluşturma
Web uygulamanız veya API uygulamanız zaten dağıtıldıysa, azure portalında kimlik doğrulamasını açabilir ve uygulama kimliğini oluşturabilirsiniz. Aksi takdirde, Azure Resource Manager şablonuyla dağıtım yaparken kimlik doğrulamayı açabilirsiniz.
Azure portalında dağıtılan bir web uygulaması veya API uygulaması için uygulama kimliği oluşturma
Azure portalında web uygulamanızı veya API uygulamanızı bulun ve seçin.
Ayarlar altında Kimlik Doğrulama>'yi seçin.
Kimlik sağlayıcısı ekle bölmesi açıldıktan sonra, Temel bilgiler sekmesinde, Kimlik sağlayıcısı listesinde Microsoft'u seçerek Microsoft Entra kimliklerini kullanın ve ardından Ekle'yi seçin.
Şimdi web uygulamanız veya API uygulamanız için aşağıdaki gibi bir uygulama kimliği oluşturun:
Uygulama kayıt türü için Yeni uygulama kaydı oluştur'u seçin.
Ad için uygulama kimliğiniz için bir ad belirtin.
Desteklenen hesap türleri için senaryonuza uygun hesap türlerini seçin.
Erişimi kısıtla için Kimlik doğrulaması gerektir'i seçin.
Kimliği Doğrulanmamış istekler için senaryonuza göre seçeneğini belirleyin.
İşiniz bittiğinde Ekle'yi seçin.
Kimlik sağlayıcısı bölümünde, web uygulamanız veya API uygulamanız için yeni uygulama kimliği şimdi görünür:
İpucu
Uygulama kimliği görünmüyorsa, araç çubuğunda Yenile'yi seçin.
Şimdi web uygulamanız veya API uygulamanız için oluşturduğunuz uygulama kimliği için uygulama (istemci) kimliğini ve kiracı kimliğini bulmanız gerekir. Bu kimlikleri Bölüm 3'te kullanırsınız. Bu nedenle, Azure portalı için aşağıdaki adımlarla devam edin.
Azure portalında web uygulamanız veya API uygulamanız için uygulama kimliğinin istemci kimliğini ve kiracı kimliğini bulma
Web uygulaması menünüzün Yönet'in altında Kimlik Doğrulaması'yı seçin.
Kimlik sağlayıcısı bölümünde, daha önce oluşturduğunuz uygulama kimliğinizi bulun. Uygulama kimliği adını seçin.
Genel Bakış sayfasında Uygulama (istemci) kimliği ve Dizin (kiracı) kimliği değerlerini bulun. 3. Bölümde kullanmak üzere değerleri kopyalayın ve kaydedin.
Gerekirse, web uygulamanızda veya API uygulamanızın dağıtım şablonunda kiracı kimliği GUID'sini de kullanabilirsiniz. Bu GUID, belirli bir kiracınızın GUID'sidir ("kiracı kimliği") ve şu URL'de görünmelidir:
https://sts.windows.net/<tenant-GUID>
Azure Resource Manager şablonuyla dağıtım yaparken kimlik doğrulamayı ayarlama
Azure Resource Manager şablonu (ARM şablonu) kullanıyorsanız, web uygulamanız veya API uygulamanız için mantıksal uygulamanızın uygulama kimliğinden farklı bir Microsoft Entra uygulama kimliği oluşturmanız gerekir. Uygulama kimliğini oluşturmak ve ardından istemci kimliğini ve kiracı kimliğini bulmak için Azure portalının 2. Bölümünde yer alan önceki adımları izleyin. Uygulamanızın dağıtım şablonunda ve ayrıca Bölüm 3'te hem istemci kimliğini hem de kiracı kimliğini kullanacaksınız.
Önemli
Web uygulamanız veya API uygulamanız için Microsoft Entra uygulama kimliğini oluştururken PowerShell'i değil Azure portalını kullanmanız gerekir. PowerShell komutu, bir web sitesinde kullanıcıları oturum açmak için gerekli izinleri ayarlamaz.
İstemci kimliğini ve kiracı kimliğini aldıktan sonra, bu kimlikleri dağıtım şablonunuzdaki web uygulamanızın veya API uygulamanızın alt kaynağı olarak ekleyin:
"resources": [
{
"apiVersion": "2015-08-01",
"name": "web",
"type": "config",
"dependsOn": ["[concat('Microsoft.Web/sites/','parameters('webAppName'))]"],
"properties": {
"siteAuthEnabled": true,
"siteAuthSettings": {
"clientId": "<client-ID>",
"issuer": "https://sts.windows.net/<tenant-ID>/"
}
}
}
]
Boş bir web uygulamasını ve mantıksal uygulamayı Microsoft Entra kimlik doğrulamasıyla birlikte otomatik olarak dağıtmak için şablonun tamamını burada görüntüleyin veya aşağıdaki Azure'a Dağıt düğmesini seçin:
Bölüm 3: Mantıksal uygulamanızdaki Yetkilendirme bölümünü doldurma
Önceki şablonda zaten bu yetkilendirme bölümü ayarlanmıştır, ancak mantıksal uygulama tanımınızı doğrudan yazarsanız, tam yetkilendirme bölümünü eklemeniz gerekir.
Mantıksal uygulama tanımınızı kod görünümünde açın.
HTTP eylem tanımına gidin, Yetkilendirme bölümünü bulun ve aşağıdaki özellikleri ekleyin:
{
"tenant": "<tenant-ID>",
"audience": "<client-ID-from-Part-2-web-app-or-API app>",
"clientId": "<client-ID-from-Part-1-logic-app>",
"secret": "<secret-from-Part-1-logic-app>",
"type": "ActiveDirectoryOAuth"
}
| Mülk | Zorunlu | Açıklama |
|---|---|---|
tenant |
Yes | Microsoft Entra kiracısının GUID'si. |
audience |
Yes | Web uygulamanızın veya API uygulamanızın uygulama kimliğinden istemci kimliği olan, erişmek istediğiniz hedef kaynağın GUID'si. |
clientId |
Yes | Erişim isteyen istemcinin GUID değeri, mantıksal uygulamanızın uygulama kimliğinden alınan istemci kimliğidir. |
secret |
Yes | Erişim belirtecini talep eden istemcinin uygulama kimliğine ait gizli anahtar veya parola. |
type |
Yes | Kimlik doğrulama türü. ActiveDirectoryOAuth kimlik doğrulaması için değeri olur ActiveDirectoryOAuth. |
Örneğin:
{
"actions": {
"HTTP": {
"inputs": {
"method": "POST",
"uri": "https://your-api-azurewebsites.net/api/your-method",
"authentication": {
"tenant": "tenant-ID",
"audience": "client-ID-from-azure-ad-app-for-web-app-or-api-app",
"clientId": "client-ID-from-azure-ad-app-for-logic-app",
"secret": "key-from-azure-ad-app-for-logic-app",
"type": "ActiveDirectoryOAuth"
}
}
}
}
}
Kod aracılığıyla API çağrılarının güvenliğini sağlama
Sertifika kimlik doğrulaması
Mantıksal uygulama iş akışınızdan web uygulamanıza veya API uygulamanıza gelen istekleri doğrulamak için istemci sertifikalarını kullanabilirsiniz. Kodunuzu ayarlamak için TLS karşılıklı kimlik doğrulamasını yapılandırmayı öğrenin.
Önemli
Kimlik bilgileri, gizli diziler, erişim anahtarları, bağlantı dizeleri, sertifikalar, parmak izleri ve benzer bilgiler gibi hassas ve kişisel verileri her zaman en yüksek kullanılabilir veya desteklenen güvenlik düzeyiyle koruyun ve koruyun.
Microsoft Entra Id ve Azure Key Vault kullanarak bu tür bilgileri güvenli bir şekilde depoladığınızdan emin olun. Bu bilgileri sabit kodlamayın, diğer kullanıcılarla paylaşmayın veya başkalarının erişebileceği herhangi bir yerde düz metin olarak kaydetmeyin. Gizli bilgilerin tehlikeye girmesi durumunda bu bilgileri yenilemek veya iptal etmek için bir plan oluşturun. Daha fazla bilgi için aşağıdaki kaynaklara bakın:
Yetkilendirme bölümünde aşağıdaki özellikleri ekleyin:
{
"type": "ClientCertificate",
"password": "<password>",
"pfx": "<long-pfx-key>"
}
| Mülk | Zorunlu | Açıklama |
|---|---|---|
type |
Yes | Kimlik doğrulama türü. TLS/SSL istemci sertifikaları için değeri olmalıdır ClientCertificate. |
password |
Hayır | İstemci sertifikasına (PFX dosyası) erişme parolası. |
pfx |
Yes | İstemci sertifikasının (PFX dosyası) base64 ile kodlanmış içeriği. |
Temel kimlik doğrulama
Mantıksal uygulamanızdan web uygulamanıza veya API uygulamanıza gelen istekleri doğrulamak için kullanıcı adı ve parola gibi temel kimlik doğrulamasını kullanabilirsiniz. Temel kimlik doğrulaması yaygın bir desen olsa da ve bu kimlik doğrulamasını web uygulamanızı veya API uygulamanızı oluşturmak için kullanılan herhangi bir dilde kullanabilirsiniz, ancak her zaman kullanılabilir veya desteklenen en iyi kimlik doğrulama düzeyini kullanın.
Uyarı
Microsoft , kimlik doğrulaması ve yetkilendirme için aşağıdaki akışların kullanılmasını önerir:
OAuth 2.0 için Kaynak Sahibi Parola Kimlik Bilgileri (ROPC)
Bu akış, uygulamada parolayla oturum açmanızı sağlar. Akış çok faktörlü kimlik doğrulaması (MFA) ile uyumsuzdur, uygulamada çok yüksek düzeyde güven gerektirir ve diğer akışlarda mevcut olmayan riskleri taşır. Bu akışı yalnızca diğer daha güvenli akışlar desteklenmiyorsa veya kullanılamıyorsa kullanın.
Daha fazla bilgi için bkz. Oauth 2.0 Kaynak Sahibi Parola Kimlik Bilgileri.
OAuth 2.0 için örtük yetki akışı
Bu belirteç tabanlı akış, sunucunun verileri işleme
POSTüzerinde daha güvenli bir denetime sahip olduğu geleneksel web uygulamalarına yöneliktir ve genellikle yetkilendirme kodu akışıyla birlikte kullanılır. Bu akışın kimlik belirteçlerini veya erişim belirteçlerini işleme ve döndürme şekli nedeniyle akış, uygulamada çok yüksek düzeyde güven gerektirir ve diğer akışlarda mevcut olmayan riskleri taşır. Bu akışı yalnızca diğer daha güvenli akışlar desteklenmediğinde veya kullanılabilir olmadığında kullanın.Daha fazla bilgi için OAuth 2.0 örtük yetki akışı bölümüne bakın.
Yetkilendirme bölümünde aşağıdaki özellikleri ekleyin:
{
"type": "Basic",
"username": "<username>",
"password": "<password>"
}
| Mülk | Zorunlu | Açıklama |
|---|---|---|
type |
Yes | Kullanmak istediğiniz kimlik doğrulama türü. Temel kimlik doğrulaması için değeri **olmalıdırBasic**. |
username |
Yes | Kimlik doğrulaması için kullanmak istediğiniz kullanıcı adı. |
password |
Yes | Kimlik doğrulaması için kullanmak istediğiniz parola. |
Kod aracılığıyla Microsoft Entra kimlik doğrulaması
Varsayılan olarak, Azure portalında etkinleştirdiğiniz Microsoft Entra kimlik doğrulaması ayrıntılı yetkilendirme sağlamaz. Örneğin, bu kimlik doğrulaması API'nizi belirli bir kullanıcı veya uygulama için değil yalnızca belirli bir kiracıya kilitler.
Kod aracılığıyla mantıksal uygulamanıza API erişimini kısıtlamak için JSON web belirtecine (JWT) sahip üst bilgiyi ayıklayın. Arayanın kimliğini denetleyin ve eşleşmeyen istekleri reddedin.