【发布时间】:2021-04-17 00:43:03
【问题描述】:
我在我的 Web API 项目中使用 .NET Core 3.1。在那,我使用了 JWT 身份验证。现在我想允许用户使用他们的手机号码登录或注册。因此,当用户输入手机号码时,将发送 OTP,并且在验证 OTP 后,我想为用户发出 JWT。现在,我对此有以下疑问:
- 如果此流程正确或需要更改某些内容?
- 我应该将发送到用户手机号码的 OTP 存储在哪里?我应该创建一个单独的表来存储 OTP 和手机号码,还是应该在我使用 ReactJs 的前端站点上对其进行管理?
注意:我无法将身份验证机制从 JWT 更改为任何其他机制,因为我已经依赖于它。
【问题讨论】:
-
嗨@Sunny,如果您使用的是Asp.net core Identity,您可以将电话号码存储在AspNetUsers 表中。要在 asp.net core 中发送 OTP 验证,您可以尝试使用 Multi-factor authentication 和 Enable QR Code generation for TOTP authenticator apps in ASP.NET Core。
-
不,我没有使用 Asp Net Core Identity。这就是为什么我想在我的流程正确的情况下为此创建一个单独的表。
标签: asp.net-core-webapi jwt-auth one-time-password