【问题标题】:Skip offline access permission in Microsoft OIDC authorization在 Microsoft OIDC 授权中跳过离线访问权限
【发布时间】:2021-02-08 04:47:00
【问题描述】:

我正在使用此代码

var app = ConfidentialClientApplicationBuilder.Create(AzureAdApplicationId)
   .WithTenantId("organizations")
   .WithRedirectUri(AzureAdRedirectUrl)
   .WithClientSecret(AzureAdSecretKey)
   .Build();

azureAdScopes = new List<string>() { "email" };

var signInRequest = app.GetAuthorizationRequestUrl(azureAdScopes);

var uri = await signInRequest.ExecuteAsync();

产生网址

https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize?scope=email+openid+profile+offline_access&...

我只需要用户的用户名,我不需要离线访问用户的帐户。如何将它们从范围中移除?

【问题讨论】:

    标签: oauth-2.0 azure-active-directory openid-connect


    【解决方案1】:

    您可以在没有offline_access 的情况下请求该 url,但 Azure AD v2.0 OAuth2 帐户同意页面会自动列出“随时访问您的数据”,即使范围内未指定 offline_access。这是issue 相关的。

    备注显示在document

    此时,offline_access("保持对您拥有的数据的访问权限 授予它访问权限") 和 user.read ("让您登录并阅读您的 profile") 权限自动包含在初始 同意申请。

    【讨论】:

    • 这太糟糕了。根据您链接到的问题,已承诺在 1.5 年前推出针对此问题的修复,即不自动包含 offline_access。
    猜你喜欢
    • 2021-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-31
    • 2018-12-20
    • 2023-04-05
    • 2015-04-20
    • 2013-09-18
    相关资源
    最近更新 更多