Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 应用程序和API微服务的身份验证服务_Node.js_Reactjs_Authentication_React Native_Microservices - Fatal编程技术网

Node.js 应用程序和API微服务的身份验证服务

Node.js 应用程序和API微服务的身份验证服务,node.js,reactjs,authentication,react-native,microservices,Node.js,Reactjs,Authentication,React Native,Microservices,我有一个节点服务器,带有用于SaaS应用程序的express。节点/express应用程序为公司登录页、注册用户、身份验证、用户和密码更改提供服务。这都是使用节点/express构建的。身份验证是使用passport完成的 当用户登录时,他将被重定向到仪表板应用程序(SaaS应用程序本身),该应用程序由React、React route和Redux构建Redux需要调用节点/expressAPI,该节点当前在同一节点/express服务中 这些API还将被使用React Native开发的移动应

我有一个
节点
服务器,带有用于SaaS应用程序的express。
节点
/
express
应用程序为公司登录页、注册用户、身份验证、用户和密码更改提供服务。这都是使用
节点
/expr
e
ss构建的。身份验证是使用
passport
完成的

当用户登录时,他将被重定向到仪表板应用程序(SaaS应用程序本身),该应用程序由
React
React route
Redux
构建
Redux
需要调用
节点
/
express
API,该节点当前在同一
节点
/
express
服务中

这些API还将被使用
React Native
开发的移动应用程序使用

我们希望将服务分为不同的节点模块,一个用于SaaS应用程序,另一个用于处理公司页面、注册等。这是向微服务体系结构的发展

我们的疑问是如何处理用户身份验证。我们需要一个单一的身份验证机制,允许用户使用
React
SaaS应用程序,并为移动应用程序提供服务

如果用户是从web登录的,他可以使用带有API的SaaS应用程序。如果他是从手机登录的,他可以使用手机上的API

这是我们拆分服务器的第一种方法,我们希望找到解决身份验证问题的推荐方法。当然,如果我们可以将身份验证服务拆分为另一个微服务,那将非常有趣


提前感谢您的帮助。

看看以这种方式谋生的认证提供商。这是两个例子,但还有更多

使用他们的API设置应用程序并将其插入express。在完成这个过程之后,您将更好地了解您可能需要哪些功能,以及需要在API中实现哪些功能才能使用它们


在审查结束时,要么使用其中一项服务,要么实施所需功能的精简版本。

看看以这种方式为生的认证提供商。这是两个例子,但还有更多

使用他们的API设置应用程序并将其插入express。在完成这个过程之后,您将更好地了解您可能需要哪些功能,以及需要在API中实现哪些功能才能使用它们


在审查结束时,使用其中一项服务或实现所需功能的精简版本。

我解决此特定问题的一种方法是使用和JWT

用户使用登录,然后我的web应用在本地存储中存储。这将在每个ajax请求的头中传递给服务器。服务器负责在每个请求上验证JWT。为了在React本机应用程序中实现这一点,同样的方法也可以用于


特别是关于Passport,看起来有一些可能意味着您不需要依赖类似Auth0的东西

我解决这个特殊问题的一种方法是使用和JWT

用户使用登录,然后我的web应用在本地存储中存储。这将在每个ajax请求的头中传递给服务器。服务器负责在每个请求上验证JWT。为了在React本机应用程序中实现这一点,同样的方法也可以用于


特别是关于Passport,看起来有一些可能意味着您不需要依赖类似Auth0的东西

你考虑过使用JWT吗?还不知道。请给出建议。您考虑过使用JWT吗?还不知道。请给出建议。似乎Auth0解决了所有身份验证问题,但我无法找到如何对多个系统进行一次性身份验证。我应该存储JWT并在调用可用的应用程序(如SaaS应用程序)时传递它吗?Auth0解决了所有身份验证问题,但我无法找到如何对多个系统进行一次性身份验证。我是否应该存储JWT并在调用可用应用程序(如SaaS应用程序)时传递它?