在文件中有一个App Client Secret,但我找不到它的目的.
我看到javascript SDK没有使用它,我也不知道为什么,可能是因为很多javascript应用程序在用户浏览器上运行,而不是揭露秘密的地方,但这是我的猜测.
如果这是一个类似密码的东西App Client ID,我看不出这是如何提高安全性的,因为无论如何都可以窃取你的App Client ID意志也可以窃取它App Client Secret.此外,它App Client ID是相当随机的,应该为暴力攻击提供足够的安全性.
我想知道这个秘密的目的是什么,cognito如何使用它以及它提供了哪些功能.
小智 14
App Client ID并且App Client Secret在您使用机器对机器通信时是必需的,在这种通信中您没有用户名和密码。有一个授予类型:Client Credentials。要更好地理解这一点,您可以查看https://auth0.com/docs/api-auth/which-oauth-flow-to-use
age*_*420 12
是的,你是对的.它就像密码.至于使用它的原因,这不是Cognito特定属性,而是OAuth2标准的一部分.实际上,在浏览器上运行的公共应用程序中使用app secret是没有意义的.通常,在开发公共应用程序时,不使用客户端密钥.如果您这样做,您有责任安全地存储它.
像你说的那样来到Cognito,它的JS SDK不使用客户端密钥(应该是这样).但是,如果您使用AWS CLI或boto3,则可以使用客户端密钥.在这种情况下,如果您的应用客户端有秘密,您应该使用此秘密和其他一些参数(我认为用户名+ clientid )来计算哈希并将其作为参数传递.
但就安全性而言,它并没有真正有所作为.
| 归档时间: |
|
| 查看次数: |
5662 次 |
| 最近记录: |