将cognitoIdentityId用作公共userId是不安全的。
CognitoIdentityId是AWS Cognito提供的一种身份标识符,用于标识用户在应用程序中的身份。但是,将cognitoIdentityId直接用作公共userId存在一些安全风险。
首先,cognitoIdentityId是与特定用户相关联的唯一标识符。如果直接将其作为公共userId使用,可能会暴露用户的真实身份和敏感信息,从而导致隐私泄露的风险。
其次,cognitoIdentityId是由AWS Cognito生成和管理的,对于外部服务或系统来说,它可能无法验证和控制其生成的方式和唯一性。这意味着攻击者可以伪造或冒充cognitoIdentityId,进行未经授权的访问或操作,进一步增加了系统的安全风险。
因此,为了确保安全性,建议不直接使用cognitoIdentityId作为公共userId。相反,可以在应用程序中使用其它安全机制生成和管理userId,例如使用单独的用户注册系统,或者生成一种与cognitoIdentityId相关的安全令牌来代替。
如果您需要使用AWS Cognito来管理用户身份和权限,推荐使用Cognito User Pool来创建和管理用户,并使用其提供的userId作为公共userId。Cognito User Pool提供了一套完整的用户注册、登录、密码重置等功能,并且与AWS Cognito其他功能(如Cognito Identity)集成良好,可以更好地保障系统的安全性。
更多关于AWS Cognito User Pool的信息,请参考腾讯云的相关产品介绍:Cognito User Pool。
领取专属 10元无门槛券
手把手带您无忧上云