gpt4 book ai didi

rest - 微服务认证

转载 作者:行者123 更新时间:2023-12-03 13:35:15 24 4
gpt4 key购买 nike

上下文

我有多种服务,例如:

  • 用户(LDAP 或事件目录等...)
  • 计费
  • 策划
  • 等等...
  • 认证

  • 我需要使用 OAuth2.0 连接我的微服务,首先,使用标准登录名/密码(我使用自己的数据,而不是使用第三方服务器)

    问题

    根据这些图片:

    第1步

    enter image description here

    第2步

    enter image description here

    如何在 authmicroservice 以外的其他服务中处理 access_token 控制或授权控制?

    最佳答案

    为了在微服务架构中管理身份验证,您必须有不同的观点。

    请记住,当您在单体应用上工作时,您只有一个身份验证过程。

    作为 PHP 应用程序中的示例,您在具有相应凭据的数据库中找到您的用户,然后您创建了一个 session ,该用户已“经过身份验证”。

    使用微服务,工作流程是一样的。现在唯一改变的是您无法在不同的服务中打开 session 。此外,您不需要获取经过身份验证的用户。您只需要确保他有权对您的微服务执行当前调用。

    感谢 oauth2,拥有一个有效的 access_token 可以为您提供此信息。

    这应该回答前端部分。在后端部分(我的意思是在 api 网关后面),您不应该管理 access_token,因为它与微服务无关。您可以使用功能键在微服务中查找与用户相关的任何信息,例如 uuid。

    为了在使用 oauth2 时获得 uuid,我建议也使用 openid connect。使用此协议(protocol)的用户可以管理特定的用户信息,它使您可以访问特定的端点“/userinfo”。

    希望这个模式能让这个答案更清楚。

    enter image description here

    关于rest - 微服务认证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31044380/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com