Azure App Service için dağıtım kimlik bilgilerini yönetme

Yerel Git dağıtımını veya FTP/S dağıtımını kullanarak yerel uygulamaları Azure App Service'e dağıtabilirsiniz. Bu makalede, yerel Git veya FTP/S dağıtımı için dağıtım kimlik bilgilerinin nasıl oluşturulacağı ve yönetileceğini açıklanmaktadır.

Dağıtım kimlik bilgileri, Azure aboneliği kimlik bilgilerinizden farklıdır. App Service, güvenli yerel uygulama dağıtımı için iki kimlik bilgisi türünü destekler: kullanıcı kapsamı ve uygulama kapsamı kimlik bilgileri.

  • Kullanıcı kapsamı veya kullanıcı düzeyi kimlik bilgileri, kullanıcının tüm Azure hesabı için bir dağıtım kimlik bilgileri kümesi sağlar. Rol tabanlı erişim denetimi (RBAC) veya ortak yönetici izinleri aracılığıyla uygulama erişimi verilen bir kullanıcı, bu izinlere sahip olduğu sürece kullanıcı düzeyinde kimlik bilgilerini kullanabilir.

    Azure hesabınızın erişim iznine sahip olduğu herhangi bir abonelikte yerel Git veya FTP/S aracılığıyla App Service'e herhangi bir uygulama dağıtmak için kullanıcı kapsamı kimlik bilgilerinizi kullanabilirsiniz. Bu kimlik bilgilerini diğer Azure kullanıcılarıyla paylaşmazsınız. Kullanıcı kapsamı kimlik bilgilerinizi istediğiniz zaman sıfırlayabilirsiniz.

  • Uygulama kapsamı veya uygulama düzeyi kimlik bilgileri, uygulama başına yalnızca bu uygulamayı dağıtmak için kullanılabilecek bir kimlik bilgileri kümesidir. Bu kimlik bilgileri oluşturma sırasında her uygulama için otomatik olarak oluşturulur ve el ile yapılandırılamaz, ancak parola her zaman sıfırlanabilir.

    Bir kullanıcıya RBAC ile uygulama düzeyinde kimlik bilgilerine erişim izni verilebilmesi için, yerleşik Web Sitesi Katkıda Bulunanı rolü de dahil olmak üzere bir uygulamada en az Katkıda Bulunan düzeyinde izinlere sahip olması gerekir. Okuyucu rolü yayımlayamaz ve bu kimlik bilgilerine erişemez.

Önkoşullar

Dağıtım kimlik bilgilerini ayarlamak, sıfırlamak, erişmek veya kullanmak için App Service uygulamasında Katkıda Bulunan düzeyinde izinlere sahip olmanız gerekir.

Temel kimlik doğrulaması gereksinimi

App Service uygulamalarını yerel Git veya FTP/S aracılığıyla yayımlamak için temel kimlik doğrulamasını etkinleştirmeniz gerekir. SCM Temel Kimlik Doğrulama Yayımlama Kimlik Bilgileri ve FTP Temel Kimlik Doğrulama Yayımlama Kimlik Bilgileri, Azure portalındaki uygulamanın Yapılandırma sayfasında Açık olarak ayarlanmalıdır.

Temel kimlik doğrulaması diğer kimlik doğrulama yöntemlerine göre daha az güvenlidir ve yeni uygulamalar için varsayılan olarak devre dışıdır. Temel kimlik doğrulaması devre dışı bırakılırsa, uygulamanın Dağıtım Merkezi'nde dağıtım kimlik bilgilerini görüntüleyemez veya ayarlayamazsınız veya bu kimlik bilgilerini yayımlamak için kullanamazsınız. Daha fazla bilgi için bkz. Azure App Service dağıtımlarında temel kimlik doğrulamasını devre dışı bırakma.

Kullanıcı kapsamı kimlik bilgilerini ayarlama

FTP/S dağıtımı için hem kullanıcı adına hem de parolaya ihtiyacınız vardır. Yerel Git dağıtımı için yalnızca bir kullanıcı adı gerekir. Kullanıcı adı Azure içinde benzersiz olmalıdır.

Yerel Git dağıtımı için kullanıcı adı @ karakterini içeremez.

FTP/S dağıtımı için:

  • Kullanıcı adı biçiminde <app-name>\<user-name>olmalıdır. Kullanıcı kapsamı kimlik bilgileri uygulamaya değil kullanıcıya bağlı olduğundan, bu biçim oturum açma eylemini uygulama için doğru FTP/S uç noktasına yönlendirir.

  • Parola en az sekiz karakter olmalı ve büyük harf, küçük harf, sayı ve simge içermelidir. Azure portalında kullanıcı kapsamı parolası gösterilmez ve JSON çıkışı bunu olarak nullgösterir. Parolanızı kaybederseniz veya unutursanız, yeni bir parola almak için kimlik bilgilerinizi sıfırlayabilirsiniz .

Azure CLI veya Azure portalını kullanarak kullanıcı kapsamı kimlik bilgilerini yapılandırabilirsiniz.

Azure CLI kullanarak kullanıcı kapsamı kimlik bilgileri oluşturmak için az webapp deployment user set komutunu çalıştırın, ardından <username> ve <password>'yi seçtiğiniz değerlerle değiştirin.

az webapp deployment user set --user-name <username> --password <password>

Kullanıcı kapsamı kimlik bilgilerini ayarladıktan sonra azure portalındaki uygulamanızın Genel Bakış sayfasında dağıtım kullanıcı adınızı görebilirsiniz. Yerel Git dağıtımı yapılandırıldıysa etiket Git/Dağıtım kullanıcı adıdır. Aksi takdirde, etiket FTP/Dağıtım kullanıcı adıdır.

Bir uygulamanın Genel Bakış sayfasında Git dağıtımı kullanıcı adını gösteren ekran görüntüsü.

Uygulama kapsamı kimlik bilgilerini alma

Uygulama kapsamı kimlik bilgileri, uygulama oluşturma sırasında otomatik olarak oluşturulur. FTP/S uygulama kapsamı kullanıcı adı her zaman biçimini app-name\$app-name izler. Yerel Git uygulama kapsamı kullanıcı adı biçimini $app-namekullanır.

Uyarı

git remote add Bash gibi değişken ilişkilendirmesi için dolar işaretini kullanan kabuklarda kullandığınızda, kimlik doğrulama hatalarını önlemek için kullanıcı adı veya paroladaki dolar işaretlerinden kaçınmak için kullanmanız \$ gerekir.

Azure CLI, Azure PowerShell veya Azure portalını kullanarak uygulama kapsamı kimlik bilgilerinizi alabilirsiniz.

Azure CLI'de, uygulama kapsamındaki kimlik bilgilerini almak için az webapp deployment list-publishing-profiles komutunu kullanın. Örneğin:

az webapp deployment list-publishing-profiles --resource-group myResourceGroup --name myApp

Yerel Git dağıtımı için komutunu da kullanabilirsinizaz webapp deployment list-publishing-credentials. Aşağıdaki örnek, uygulamanın kapsamına ait kimlik bilgileri eklenmiş bir Git uzak URI'sini döndürür.

az webapp deployment list-publishing-credentials --resource-group myResourceGroup --name myApp --query scmUri

Döndürülen Git uzak URI'sinin sonunda /<app-name>.git yoktur. ** URI'yi kullanarak bir uzaktan bağlantı ekliyorsanız, hata 22git-http-push oluşmasını önlemek için URI'ye /<app-name>.git ekleyin.

Kimlik bilgilerini sıfırlama

Uygulama kapsamı dağıtım kimlik bilgilerinizi sıfırlamak ve yeni bir parola almak için Azure CLI, Azure PowerShell veya Azure portalını kullanabilirsiniz. Uygulama kapsamı kullanıcı adları otomatik olarak oluşturulan değerlerini korur.

Azure CLI ve Azure portalında, yeni kimlik bilgileri oluşturarak kullanıcı kapsamı kimlik bilgilerinizi de sıfırlayabilirsiniz. Bu eylem, hesabınızdaki kullanıcı kapsamı kimlik bilgilerini kullanan tüm uygulamaları etkiler.

Dağıtım kimlik bilgilerinizi sıfırladığınızda, yayımlama profili aracılığıyla tüm dış tümleştirmeler ve otomasyonlar çalışmayı durdurur ve yeni değerlerle yeniden yapılandırılmalıdır.

Azure CLI'de, az resource invoke-action komutunu newpassword eylemiyle kullanarak uygulama kapsamı parolasını sıfırlayın.

az resource invoke-action --action newpassword --resource-group <group-name> --name <app-name> --resource-type Microsoft.Web/sites

Yeni kullanıcı adı ve parola değerleri oluşturmak için komutunu yeniden çalıştırarak az webapp deployment user set kullanıcı kapsamı kimlik bilgilerini sıfırlayın.

az webapp deployment user set --user-name <new-username> --password <new-password>