0

Azure Active Directory我已经通过设置和手动输入密码/电子邮件连接了我的 Visual Studio 。

当我Azure Serice Authenticator在工具下进入 Visual Studio 时,会显示此凭据。

我想访问关联的 ID。我遇到了这个doc,我想要AZURE_USERNAME,它必须与登录的 id 相关联。

我无法获得访问此值的方法。


这是否意味着如果我明确设置了这样的值,我只能访问它?

- 或者,有什么方法可以访问登录到 Visual Studio/或登录到 Windows 的用户的电子邮件 ID,而不仅仅是用户名

4

1 回答 1

0

是的,当然我们应该预设环境变量。

然后我们可以使用它们进行EnvironmentCredential身份验证。反过来是行不通的。

您可以调用 Microsoft Graph API 来获取用户信息。

示例参考这里

您可以像这样实现 graphServiceClient :

var credential = new DefaultAzureCredential();
var token = credential.GetToken(
    new Azure.Core.TokenRequestContext(
        new[] { "https://graph.microsoft.com/.default" }));

var accessToken = token.Token;
var graphServiceClient = new GraphServiceClient(
    new DelegateAuthenticationProvider((requestMessage) =>
    {
        requestMessage
        .Headers
        .Authorization = new AuthenticationHeaderValue("bearer", accessToken);

        return Task.CompletedTask;
    }));

一个博客供您参考。

于 2021-06-22T02:03:31.607 回答