我正在尝试使用 Fluent Management API 更新 Azure Web 应用程序的 MinTlsVersion 设置:
app.Inner.SiteConfig.MinTlsVersion = SupportedTlsVersions.OneFullStopZero;
但是,SiteConfig 属性始终为 NULL,并且我无法找到加载它的方法。
我可以更新其他设置,例如 HttpsOnly,但不能更新 SiteConfig 属性下方的设置。
app.Inner.HttpsOnly = true;
有人知道如何使用 Fluent API 更改 MinTlsVersion 吗?
最佳答案
据我所知,Azure Fluent API 中没有 MinTlsVersion 属性。您可以引用Azure SDK查看SiteConfig类。
此外,如果您想为 Azure Web 应用程序设置 MinTlsVersion,您可以使用 rest api来实现它。
先决条件:
为 Azure 资源管理器预配设置租户 ID、客户端 ID 和客户端 key 。你可以引用这个article获取您需要的一些参数。
那么您可以引用如下工作代码:
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;
}
关于c# - Azure Web App - 如何使用 Fluent API 更新 MinTlsVersion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51878938/