自动客户端密码
Automated client secret
我想在我的应用程序中实现 Google 日历。因此,作为开发人员,我去控制台下载我的 secret.json,现在可以访问数据了。但作为客户,您不必处理所有这些,您只需看到 OAuth 屏幕,然后就可以登录。那么我如何获得我必须手动下载秘密才能登录。
概念不同。一个重要的注意事项是客户端是指客户端应用程序。用户使用一个应用程序,它是身份提供者的客户端(在您的情况下,Google,对吗?)。
用户登录是用户告诉身份提供者他是谁的方式。这通常使用 Authorization Code Flow.
秘密(客户端秘密)在使用时必须仅由客户端应用程序和身份提供者(auth 服务器)知道。这样,当应用程序向服务器执行请求时,秘密有助于证明请求的真实性。有时,秘密是必需的,但并非总是如此,它可能是可选的。
因此,客户端密码可以在不同的场景中使用,例如提到的授权代码流程或通常在机器对机器流程中(例如Client Credentials Flow)。
也许,您正在实施 Google 文档描述 here 之类的东西。您可能会使用授权代码流,您的应用程序会将秘密发送到 Google Identity Server(但是,用户不知道这一点)。
我想在我的应用程序中实现 Google 日历。因此,作为开发人员,我去控制台下载我的 secret.json,现在可以访问数据了。但作为客户,您不必处理所有这些,您只需看到 OAuth 屏幕,然后就可以登录。那么我如何获得我必须手动下载秘密才能登录。
概念不同。一个重要的注意事项是客户端是指客户端应用程序。用户使用一个应用程序,它是身份提供者的客户端(在您的情况下,Google,对吗?)。
用户登录是用户告诉身份提供者他是谁的方式。这通常使用 Authorization Code Flow.
秘密(客户端秘密)在使用时必须仅由客户端应用程序和身份提供者(auth 服务器)知道。这样,当应用程序向服务器执行请求时,秘密有助于证明请求的真实性。有时,秘密是必需的,但并非总是如此,它可能是可选的。
因此,客户端密码可以在不同的场景中使用,例如提到的授权代码流程或通常在机器对机器流程中(例如Client Credentials Flow)。
也许,您正在实施 Google 文档描述 here 之类的东西。您可能会使用授权代码流,您的应用程序会将秘密发送到 Google Identity Server(但是,用户不知道这一点)。