Oauth 2.0 我想将加密密码和解密密码从react js发送到WSO2 IS 5.9.0?

Oauth 2.0 我想将加密密码和解密密码从react js发送到WSO2 IS 5.9.0?,oauth-2.0,wso2,wso2-am,wso2is,wso2carbon,Oauth 2.0,Wso2,Wso2 Am,Wso2is,Wso2carbon,我使用react JS作为前端,我想在使用时向WSO2 IS 5.9.0发送加密密码 curl --location --request POST 'https://x.x.x.x/oauth2/token' \ --header 'Content-Type: text/plain' \ --header 'Authorization: Basic xxxx' \ --data-urlencode 'grant_type=password' \ --data-urlencode 'usernam

我使用react JS作为前端,我想在使用时向WSO2 IS 5.9.0发送加密密码

curl --location --request POST 'https://x.x.x.x/oauth2/token' \
--header 'Content-Type: text/plain' \
--header 'Authorization: Basic xxxx' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'username=xxxxxxxxx' \
--data-urlencode 'password=abc12345' \
--data-urlencode 'scope=openid'

我想以加密的形式发送密码,并在WSO2结束时解密密码。 如何执行此操作?

根据OAuth,只有在客户端和服务器之间存在信任时,才能使用密码授予

规格说明如下:

资源所有者密码凭据(即用户名和密码) 可直接用作授权授予,以获得访问权限
代币仅当存在高风险时才应使用凭据
资源所有者和客户之间的信任度(例如,
客户机是设备操作系统的一部分或高度特权
应用程序),以及其他授权授予类型不可用时
可用(如授权码)


因此,不建议在浏览器客户端中使用密码授权流。

不可能将加密形式的密码发送到WSO2 is并在WSO2-is端对其进行解密。从外观上看,您使用的是OAuth2密码授权,在这里您必须将密码发送回服务器,与用户输入密码的方式相同。如果您使用的是安全连接(https),那么实际上不需要在前端对其进行加密


但是,强烈建议不要使用密码授权,您应该考虑使用。您可以参考OAuth社区中的一些最佳实践。

Mam如何使用安全传输执行上述操作?以及如何更改技术以安全执行上述用例。要获得密码授权,用户必须在客户端应用程序中输入凭据。因此,除非服务器信任浏览器客户端,否则它是不安全的。因此,您可以使用其他授权类型,如授权代码或隐式授权,具体取决于您的需求。请阅读规范以了解更多关于授权码授权和隐式授权的信息。您可以遵循这些WSO2 IS文档,如果您正在使用SPA应用程序,则当前租金是使用WSO2 IS中的公共客户端的授权授予类型。请参阅了解有关隐式授权类型漏洞的更多信息。