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

微服务体系结构中的Server-2-server authorizaton

狄玉书
2023-03-14

共有1个答案

韩烈
2023-03-14

在OAuth2规范中,有一种叫做机器到机器令牌的东西。它不同于密码凭据流,密码凭据流引用您的用户授权。

要创建机器到机器的令牌,您应该实现一个名为客户端凭据流的流。在这个流程中,基本上所有服务都有一个特定的客户机id和客户机秘密,使用这些,您将调用中央oauth-server以获取令牌。由于还需要在中央服务中配置客户机详细信息,因此您将在客户机调用之间获得授权,即哪个客户机可以调用其他客户机。还有每个令牌的生存时间配置。

如果您已经有了OAuth2设置,那么引入这个新流可能会很容易。但是,如果您不使用自己的设置在您的一侧实现这样的事情,可能会很棘手。请查看https://www.digitalocean.com/community/tutorials/an-introduction-to-oauth-2#grant-type-client-credentials

 类似资料:
  • 我最近开始使用Node.js,我必须构建一个应该使用多个Express.js服务的体系结构。其中一些服务必须位于一台服务器上,另一台则位于其他服务器上。我想构建一个基础服务(像API网关),但是我不知道在这个网关和微服务之间,或者在两个微服务之间进行通信的合适方式是什么。 目前我正在研究一个基于此的解决方案:

  • 总而言之,我们有: 产品类别: 产品ID、产品名称 订单类别: 订单ID、产品ID、用户ID、订单日期 这些方法中的任何一种可以被认为是最佳实践吗?还是有不同的解决方案?

  • 我有一个微服务体系结构,它的日志必须发送到远程Kafka主题。在它旁边,本主题的使用者将把日志发送到麋鹿堆栈(另一个团队) 我想要一个专用的微服务(fwk proxy elasticsearch),其职责是收集其他人的日志,并将其发送到远程Kafka主题。 将从我的微服务聚合的所有日志分派到fwk-代理-弹性搜索微服务的最佳协议是什么? 我希望这个模式不会重复远程Kafka主题的安全配置。我想把它

  • 我经常听说,在微服务架构中,对于每一个微服务,我们都必须创建单独的数据库。 但是,如果我必须在不同的数据库中维护外键约束,这是不可能的。就像我在身份验证微服务中有一个用户表,我想在我的目录服务中使用它(用户表中的用户 ID 列) 那么如何解决呢。 感谢提前

  • null null myApp应用程序不能直接访问用户数据库,所有通信都只能通过用户认证微服务处理。 在过去的一周里,我广泛阅读了关于REST API中的授权/身份验证的内容,但仍然不知道如何为User->myApp和MyApp->User-Authentication微服务构建一个可靠的授权/身份验证系统。 这是我现在想出来的。 null Now, user signs in sending u

  • 我很乐意听到其他的想法。如果一个特定的PaaS(比如Heroku)有一个专有的解决方案,那么这个解决方案也是可以接受的。