0

我必须通过 REST 两个内部应用程序进行通信,我不需要使用用户凭据。是否可以仅使用 cliend_id 和 client_secret 密钥进行身份验证?

如果 OAuth 无法做到这一点

在此先感谢大家

4

1 回答 1

1

是否可以仅使用 cliend_id 和 client_secret 密钥进行身份验证?

不可以。客户 ID 和客户密码仅标识项目/帐户。它们不识别用户或身份。

客户 ID 是公开的。客户端机密必须是机密的。如果您将 Client Secret 发送到其他服务,它将不再是秘密。但是,如果双方都由您控制且安全,则可以将 Client Secret 用作密钥。但是,在这种情况下,您可以只使用随机数生成器生成一个密钥,而不必担心 OAuth 客户端密钥。

对于服务到服务授权,您通常会使用包含在 HTTPauthorization: bearer标头中的签名 JWT。

有许多技术,包括密钥、加密数据等。技术的选择取决于您的问题中未包含的信息,例如处理器性能、安全细节、所需的架构、密钥轮换、公钥/私钥可用性等。

于 2019-07-07T22:47:35.257 回答