当前位置: 首页 > 知识库问答 >
问题:

微服务和 API 网关架构中的输入和身份验证验证

程仲卿
2023-03-14

简而言之,应该在哪里执行输入验证和身份验证验证?在 API 网关和每个微服务中?仅在 API 网关中?仅在每个微服务中?

也许部分在api网关中,部分在每个网关中?

谢谢你的回答!

共有1个答案

郑向阳
2023-03-14

一般来说,验证应尽可能靠近客户端,以便快速失败,但不影响每个组件/微服务的架构和责任。

话虽如此,您可以将身份验证放在API网关中,但输入验证是特定于每个微服务的,我不认为您可以将其集中到API网关中。此外,存在太多类型的验证,无法给出准确的答案,但您可以尝试尽可能多地应用第一段中的规则。

 类似资料:
  • 我在AWS上托管了几个微服务(Springdge)。例如,让我们假设Service1和Service2是两个微服务。Service1是前端和移动应用程序访问的微服务。Service1调用Service2。Service2完全是内部的。 我已经设置了位于Service1前面的Amazon API网关。我使用cognito配置了身份验证(Oauth)。 这一切都在起作用。当从前端/应用程序调用时,请求

  • 我现在读了很多关于微服务的书,但仍然不了解其中的一些部分。我画了以下图: 每个微服务有2个访问: REST:对于超文本传输协议使用 gRPC:用于内部/后台通信/交换 如果我想登录,我可以向我的身份验证服务发送一个Http请求。但是,如果我想访问需要您连接的Stuff服务,该怎么办? 假设用户希望显示数据库中可用的内容,服务人员将首先通过与身份验证服务交换来检查连接用户的“令牌”是否正确,然后返回

  • 我想通过Spring Cloud介绍Zuul作为一个API网关在少数服务前面。 我关心的问题: > 网关将位于许多服务的前面 某些服务可能公开不需要身份验证的endpoint null

  • 我正在使用Node JS和Express创建一个微服务架构。我知道微服务的主要特点之一是面向服务的体系结构,团队可以独立设计、开发和发布应用程序。因此,在我的设计中,我认为每个微服务都提供了自己的API,它们通过API相互通信,每个微服务都是独立的,有自己的生命在等待请求。 我写这个问题是因为我对微服务之间的身份验证和通信有几个疑问。 对于自动认证,我用JWT做了一些测试来认证微服务的应用编程接口

  • 我正在构建一个自定义移动应用程序,它有一个客户端,自定义后端服务器(我正在构建),并与许多其他API交互。其中一个API是Microsoft Bookings。 我面临的问题是,我需要通过服务器对服务器进行身份验证,并使用共享的客户端秘密。我知道多发性硬化症有很多医生,但还没有找到解决办法。我想知道服务器到服务器是否可以预订。 我能够获得一个access_token服务器到具有这些权限的服务器。(

  • 我们正在尝试找出IPC身份验证和授权的最佳实践。我会解释的。我们有一个基于微服务的体系结构SaaS和一个专门的认证服务。该服务负责执行身份验证和管理身份验证令牌(JWT)。 现在的问题是如何验证和授权由其他服务发起的请求(没有特定用户的上下文)? 我们是否应该为每个服务生成一个专用用户,并像对待系统中的任何其他用户一样对待它(具有适当的权限)? 我们是否应该在服务之间部署“硬编码”/动态令牌? 还