通过 Microsoft Graph SDK 更新 Azure 应用程序
Updating Azure Application via Microsoft Graph SDK
我在登录服务主体的 .NET Core 3.1 项目中使用 Microsoft Graph SDK (https://github.com/microsoftgraph/msgraph-sdk-dotnet)。我可以检索 Azure 应用程序的 Web 回复 URL:
var clientSecretCredential = new ClientSecretCredential(tenantId, clientId, clientSecret, options);
var graphClient = new GraphServiceClient(clientSecretCredential, scopes);
var rootItem = await graphClient.Applications.Request().GetAsync();
Microsoft.Graph.Application app = new Microsoft.Graph.Application();
foreach (var item in rootItem)
{
if (item.DisplayName.Equals("MyApp"))
{
app = item;
}
}
我能够很好地检索到实际的应用程序对象。我的问题是,如何通过 SDK 更新 app.Web.RedirectUris
?我可以使用 az ad app update --id <my_app_id> --reply-urls <url_1> <url_2>
通过 Azure CLI 执行此操作
您需要获取特定 Application
的 Microsoft.Graph.IApplicationRequestBuilder
,然后调用 UpdateAsync()
方法。
var rootItem = await client.Applications.Request().GetAsync();
Microsoft.Graph.Application app = new Microsoft.Graph.Application();
foreach (var item in rootItem)
{
if (item.DisplayName.Equals("MyApp"))
{
app = item;
app.Web.RedirectUris = new List<string> { "uri1", "uri2" };
await client.Applications[app.Id].Request().UpdateAsync(app);
}
}
我在登录服务主体的 .NET Core 3.1 项目中使用 Microsoft Graph SDK (https://github.com/microsoftgraph/msgraph-sdk-dotnet)。我可以检索 Azure 应用程序的 Web 回复 URL:
var clientSecretCredential = new ClientSecretCredential(tenantId, clientId, clientSecret, options);
var graphClient = new GraphServiceClient(clientSecretCredential, scopes);
var rootItem = await graphClient.Applications.Request().GetAsync();
Microsoft.Graph.Application app = new Microsoft.Graph.Application();
foreach (var item in rootItem)
{
if (item.DisplayName.Equals("MyApp"))
{
app = item;
}
}
我能够很好地检索到实际的应用程序对象。我的问题是,如何通过 SDK 更新 app.Web.RedirectUris
?我可以使用 az ad app update --id <my_app_id> --reply-urls <url_1> <url_2>
您需要获取特定 Application
的 Microsoft.Graph.IApplicationRequestBuilder
,然后调用 UpdateAsync()
方法。
var rootItem = await client.Applications.Request().GetAsync();
Microsoft.Graph.Application app = new Microsoft.Graph.Application();
foreach (var item in rootItem)
{
if (item.DisplayName.Equals("MyApp"))
{
app = item;
app.Web.RedirectUris = new List<string> { "uri1", "uri2" };
await client.Applications[app.Id].Request().UpdateAsync(app);
}
}