繁体   English   中英

通过 C# 更新 Azure AD 应用程序

[英]Updating Azure AD Application via C#

我有一个已经存在的 Azure AD 应用程序。 我希望能够通过 C# 代码对其进行更新,就像我通过 Azure CLI 一样。 我只需要向应用程序添加两个新的回复 URL。

使用 Azure CLI 我使用:

az ad app update --id <my_app_id> --reply-urls <url_1> <url_2>

如何在 C# 代码中获得等效项? 我发现 Azure SDK 没有提供这样的功能,或者至少我找不到。 我有一个服务主体,我希望通过它完成此操作。

这是我想出的一个解决方案,原来您可以使用System.Diagnostics.Process通过 C# 调用 CMD.exe 并通过那里使用 cli:

string strCmdText;
            strCmdText = "/C az login --service-principal -u <client_id> -p <client_secret> --tenant <tenant_id>";
            System.Diagnostics.Process.Start("CMD.exe", strCmdText);
            System.Diagnostics.Process.Start("CMD.exe", "/C az ad app update --id <app_id> --reply-urls https://testfromcsharp.com/");

它奏效了。

您可以使用此图 api来更新您的 azure 广告应用程序。 请注意,请求 url 中使用的application id是 azure 广告应用的 object id,而不是应用 id。

在此处输入图像描述

您可以先调用Get https://graph.microsoft.com/v1.0/applications/object_id_here以获取此应用程序的当前web声明,应该类似于

{
    "web": {
        "homePageUrl": null,
        "logoutUrl": null,
        "redirectUris": [
            "http://localhost:3000"
        ],
        "implicitGrantSettings": {
            "enableAccessTokenIssuance": true,
            "enableIdTokenIssuance": true
        }
    }
}

然后你用你想设置给应用程序的所有 url 修改redirectUris属性,请注意这个更新将覆盖所有原始重定向 url。 然后复制json内容并调用PATCH请求更新api。

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM