![](/img/trans.png)
[英]Azure Web App web API impersonate user using ClaimsIdentity
[英]Azure Web App - Howto update MinTlsVersion using the fluent API
我正在嘗試使用Fluent Management API更新Azure Web App的MinTlsVersion設置:
app.Inner.SiteConfig.MinTlsVersion = SupportedTlsVersions.OneFullStopZero;
但是, SiteConfig屬性始終為NULL,並且我無法找到一種加載它的方法。
我可以更新其他設置,例如HttpsOnly ,但不能更新SiteConfig屬性下面的設置 。
app.Inner.HttpsOnly = true;
有誰知道如何使用Fluent API更改MinTlsVersion ?
AFAIK,Azure流暢API中沒有MinTlsVersion屬性。 您可以參考Azure SDK來檢查SiteConfig類。
此外,如果要為Azure Web應用設置MinTlsVersion,則可以使用rest api來實現。
先決條件 :
為Azure資源管理器設置設置租戶ID,客戶端ID和客戶端密鑰。 您可以參考本文以獲得所需的一些參數。
然后,您可以參考如下工作代碼:
var appId = "xxxxxxxxxxxxxxxxxxxxxxx";
var secretKey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var tenantId = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var context = new AuthenticationContext("https://login.windows.net/" + tenantId);
ClientCredential clientCredential = new ClientCredential(appId, secretKey);
var tokenResponse = context.AcquireTokenAsync("https://management.azure.com/", clientCredential).Result;
var accessToken = tokenResponse.AccessToken;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Add("Authorization", "Bearer " + accessToken);
var baseUrl = new Uri($"https://management.azure.com/");
var requestURl = baseUrl + @"subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxx/resourceGroups/xxxxxxxx/providers/Microsoft.Web/sites/xxxxxxx/config/web?api-version=2016-08-01";
string body = "{\"properties\": {\"minTlsVersion\":\"1.0\"}";
var stringContent = new StringContent(body, Encoding.UTF8, "application/json");
var response = client.PutAsync(requestURl, stringContent).Result;
}
我能夠使用以下代碼更新MinTlsVersion 。
SiteConfigResourceInner siteConfig = new SiteConfigResourceInner();
siteConfig.MinTlsVersion = SupportedTlsVersions.OneFullStopZero;
await azure.WebApps.Inner.CreateOrUpdateConfigurationAsync(resourceGroup, app.Name, siteConfig);
雖然仍然無法獲取/加載當前值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.