gpt4 book ai didi

oauth-2.0 - WSO2 API Manager - 从 API 客户端验证用户

转载 作者:行者123 更新时间:2023-12-04 08:56:41 25 4
gpt4 key购买 nike

我正在开发一组通过 WSO2 API 管理器公开为 REST 的微服务。
现在,我想在 Angular 前端调用这些服务。处理用户身份验证和授权的最佳方法是什么?
我发现它可以通过 OAuth2 密码授予来完成,如 here 所述?
当用户登录时,用户凭据将被发送到特定的 WSO2 APIM 端点 (/token),它会验证、生成 token ,并且该 token 将在 header 中发送以供后续调用使用。
这是处理这种情况的最佳方法吗?
提前致谢,

最佳答案

如您的问题所述,https://apim.docs.wso2.com/en/next/learn/api-security/oauth2/grant-types/password-grant/
此方法仅在您拥有 时才有效。资源所有者的 用户名和密码。
举个例子,假设您已经发布了 API 并在 WSO2 商店中创建了一个用户(资源所有者)。此用户使用应用程序订阅 API。该应用程序将有一个客户端 ID 和 key ,用于生成 OAuth2.0 token 。此 token 将用于调用 API。
现在在您的 Angular 项目中,一种方法是 硬编码 base64(clientid:clientsecret) 并调用token API生成OAuth2.0不记名token。使用生成的 token 调用 WSO2 上的 API。要保护您的 API 免受攻击,请使用 基于IP的速率限制
现在采取另一种情况,如果您希望用户先进行身份验证,则生成 JWT token该用户使用密码授权类型(使用实际用户的用户名和密码),并使用该 JWT 生成 OAuth2.0 Bearer token这将用于调用 API。
第二种情况需要执行的步骤:

  • 在注册期间(来自 Angular),在 WSO2 身份服务器中内部载入用户。 (有相同的 WSO2 API)
  • 注册后,通过验证用户名和密码从身份服务器生成 JWT token 。 (再次为此,WSO2 API 在那里)
  • 现在使用这个 JWT token ,从 WSO2 APIM 生成 OAuth2.0 token
  • 使用此 token 调用 API

  • 第二种方法是使用 WSO2 作为网关的用户对服务认证和授权的理想方法,而第一种方法主要侧重于服务到服务的认证和授权
    希望这能回答你的问题
    引用链接: https://medium.com/wso2-learning/how-to-protect-your-apis-with-self-contained-access-token-jwt-using-wso2-api-manager-and-wso2-75673d8a4686

    关于oauth-2.0 - WSO2 API Manager - 从 API 客户端验证用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63791459/

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