gpt4 book ai didi

google-authentication - 谷歌的 oauth2 范围是否有深入研究?

转载 作者:行者123 更新时间:2023-12-05 01:12:54 25 4
gpt4 key购买 nike

我正在寻找有关 google 使用 oauth 范围的一些深入的详细信息

我的云端硬盘应用程序 工作,所以我得到了范围的简单使用。但是我有以下详细的问题/问题..

  • 我指定了两次范围。一次在我的应用程序中,然后也在 API
    安慰。这两个范围各自的意义是什么
    声明?
  • 如果我删除范围,我的用户必须重新授权我的应用程序,或者这是
    只需要添加额外的范围?
  • 如果 2 的答案是“我不能默默地删除范围”,那么
    谷歌图书馆优雅地处理重新授权用户,或
    我会得到 403 失败吗?我已阅读 How should an application add/remove scopes to an existing grant?但接受的答案专门引用 添加 范围,而我的问题是关于删除范围。
  • 我的应用程序中的不同模块是否可以请求不同的范围
    API 控制台中指定的超集?解释一下,我的应用程序有 3
    组件:访问 Drive 的 chrome 扩展程序,使用的 Web 客户端
    JS 访问 Drive 和 YouTube(在线模式)和服务器
    访问驱动器的组件(在离线模式下)..
  • 可以我的应用程序。询问它已被授予什么范围?

  • 一个普遍的问题,我确信我面临与许多应用程序作者相同的困境。如果我增加功能(这是一件好事,因为它吸引了用户),我还需要增加权限/信任用户在我的应用程序中的位置(这是一件坏事,因为它排斥用户)。对于应用程序应如何最好地处理这种利益冲突,是否有任何建议?

    最佳答案

    客户端代码中的范围列表 - 这是用户授权您的应用执行的操作

    当您向用户请求授权时,您需要指定您希望用户同意的内容。这就是范围列表的用途——它控制用户在授权您的应用程序时看到的文本,并且该授权授予的刷新/访问 token 仅限于进行这些范围允许的 API 调用。

    API 控制台中启用的服务列表 - 这是您的应用授权用户执行的操作

    据我所知,API 控制台中没有指定范围列表。但是,有一个可以启用的 Google 服务列表。在这里启用/禁用服务更多的是关于打开/关闭进行 API 调用和管理配额和/或接受与该 API 相关的服务条款的能力,而不是授权。

    当进行 API 调用时 - 你发送一个访问 token

    访问 token 封装了发出请求的用户、用户授权给您的范围以及用于授权的客户端 ID(这又属于您的项目)。此时,您需要在项目上启用发送 API 调用的服务,以及 API 请求的正确范围 - 否则您将收到 403。

    当您的所需范围列表更改时 - 您应该期望用户需要重新授权

    在您请求访问 token (通常通过发送刷新 token )时,您需要为该请求不成功做好准备。也许是因为您添加了范围 - 但也许用户选择访问 https://accounts.google.com/IssuedAuthSubTokens并已撤销您的应用程序访问权限。我不确定如果您请求的范围小于用户最初授予的范围是否会触发此问题,我会尝试测试 - 但重点是,无论您的代码需要能够处理这种情况。我相信 OAuth2DecoratorFromClientSecrets (来自链接的问题)会为您优雅地处理这个问题,但不确定 - 它应该很容易验证。

    跨多个客户端使用相同的授权 - 建议通读此文档,看看它是否涵盖了您的所有场景:https://developers.google.com/accounts/docs/CrossClientAuth

    查看授予访问 token 的范围 - 使用 OAuth2 API:https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=yaxxxxxxxxxxxxxxx

    关于google-authentication - 谷歌的 oauth2 范围是否有深入研究?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17629939/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com