当前位置: 首页 > 知识库问答 >
问题:

同意提示并不要求移动到V2.0权限后在AD App中设置的所有权限

钱和平
2023-03-14
.AddOpenIdConnect(OpenIdConnectDefaults.AuthenticationScheme, options =>
            {
                options.CallbackPath = new PathString("/callback/");
                options.SignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                options.SaveTokens = true;
                options.ClientId = <clientId>;
                options.Authority = "https://login.microsoftonline.com/common/v2.0/";
                options.ResponseType = OpenIdConnectResponseType.CodeIdToken;
                options.TokenValidationParameters = new TokenValidationParameters
                {
                    ValidateIssuer = true,
                    ValidIssuer = <valid-issuer>,
                    IssuerValidator = MultiTenantIssuerValidator.Validate,
                    ValidateAudience = true,
                    ValidateLifetime = true,
                    ValidateIssuerSigningKey = true,
                    ValidAudience = <client-id>,
                    NameClaimType = "preferred_username"
                };

使用v2.0endpoint重定向Uri-https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=&redirect_uri=&response_type=code id_token&scope=openid profile&response_mode=form_post

使用v1.0endpoint重定向Uri-https://login.microsoftonline.com/common/oauth2/authorize?client_id=&redirect_uri=&response_type=code id_token&scope=openid profile&response_mode=form_post

我试图浏览v2endpoint的文档,但没有找到任何解释这种行为变化的章节。

共有1个答案

微生鸿轩
2023-03-14

是的。V1.0和V2.0之间的行为是不同的。

对于V2.0endpoint,您应该将资源包含在作用域中。

例如,如果您的权限是Microsoft Graph,则应该如下所示生成请求uri:

https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=&redirect_uri=&response_type=code id_token&scope=openid profile https//graph.microsoft.com/.default&response_mode=form_post
 类似资料:
  • 我将只同意graph API中的特定管理权限。 但它请求所有租户权限。 当前逻辑为 如何请求对特定权限的同意?

  • 所以我使用了来制造一个不和谐的。我正在使用查看成员的是否更改。 如果某个成员位于特定的,我希望客户端使用该成员的用户名作为频道名称创建一个新的语音频道,并将该成员移动到该新的语音频道内。这是我的密码: 这不工作。有人能帮帮我吗?

  • 我已经在我的应用程序清单文件中列出了RECEIVE_SMS和READ_SMS的权限,它们也有不同的权限字符串。 授予相应的权限。然而,我注意到,在授予(用户)任何一个权限(或)时,我们都可以执行这两项任务。我的问题是,如果他们两人执行不同的任务: 1):它允许应用程序读取用户手机上的所有短信(当前存在)。 2) :它允许应用程序在用户使用应用程序时收听用户手机上接收到的所有短信。 在请求权限和拒绝

  • 我一直在尝试实现运行时权限。下面是它的代码片段: RunTimePermissionsUtil。JAVA 在一个名为AddFileActivity的活动中,我在一个点击事件中实现了这个监听器,其代码如下: 所以,我所有的代码都会执行,它会进入onNeed权限()代码,其中,它会进入 但是,令人惊讶的是,在此之后,没有任何对话框要求获得摄像头的运行时权限,相反,对话框关闭并再次显示活动。 有没有人能

  • 我编写了一些与默认规则完美配合的代码。代码如下: 但如果我用这些规则 我明白了 我做错了什么?

  • 使用 REST 接口: 我使用了以下留档:https://docs.microsoft.com/en-us/rest/api/azure/devops/artifacts/feed管理/创建提要?view=azure-devops-rest-5.0#提要权限使用REST API创建项目范围提要 并参考通过 Azure API 创建 Azure 项目通用包源 - 示例 已使用以下权限创建源 用户--