简体中文
  • m2m
  • machine-to-machine
  • access-token
  • postman
  • management-api
  • api-key
  • api-token
  • oauth2

使用 Postman 在几分钟内获取 M2M 访问令牌

了解如何使用 Postman 获取机器对机器的访问令牌,并在几分钟内调用 Logto 管理 API。

Charles
Charles
Developer

背景

Logto 管理 API 是一组 API,能够让开发者完全控制他们的 Logto 实例,支持诸如管理用户、自定义登录体验以及程序化管理组织等任务。 要访问这些 API,需要通过机器对机器 (M2M) 流程进行身份验证,以获取访问令牌。

在我们之前的文章中,我们已经通过分步指南介绍了如何使用 Logto 管理 API,并展示了典型场景以探索其全部潜力

尽管有这些资源,我们的一些用户仍然发现一开始非常困难 - 获取访问令牌。 在评估 API 或快速构建原型时,在服务器代码中设置完整的 M2M 身份验证流程可能看起来像是不必要的麻烦。有时,你只需要快速获取一个令牌。

幸运的是,现在有一种方法可以做到这一点,甚至不需要编写一行代码,只需使用几乎每个开发者机器上都有的工具 - Postman

让我们快来学习如何在几分钟内完成这一操作。

前提条件

  • Postman:如果还没有,请下载并安装 Postman
  • 一个 Logto 实例:可以是 Logto Cloud 帐户,或自托管实例。

在 Logto 管理控制台中创建一个 M2M 应用

按照本教程中的步骤创建 M2M 应用,并为其分配内置的 M2M 角色。

创建机器对机器应用程序

默认情况下,该角色将为 M2M 应用授予 all 权限。稍后你可以使用细粒度的访问控制来自定义你的 M2M 角色。

配置 Postman

  1. 创建一个新请求,并在“认证”选项卡中,选择 Oauth 2.0 作为认证类型。
Postman 认证类型
  1. 向下滚动到“配置新令牌”部分,并填写以下字段:

    • Token Name(令牌名称):为你的令牌生成器命名,例如 Logto M2M Token

    • Grant Type(授权类型):选择 Client Credentials

    • Access Token URL(访问令牌 URL):获取访问令牌的 URL。

      你可以在 M2M 应用详情页的“ENDPOINT & CREDENTIALS”部分找到该 URL。 默认值为:https://[tenant-id].logto.app/oidc/token

    • Client ID(客户端 ID):M2M 应用的 ID。

    • Client Secret(客户端密钥):M2M 应用的客户端密钥。

    • Scope(范围):令牌的范围。如果使用的是内置的 M2M 角色,将其设置为 all

  2. 在“高级”部分,找到“Token Request”,添加以下键值对,并确保它们在 Request Body 中发送:

    • resourcehttps://[tenant-id].logto.app/api (你可以在 Logto 管理控制台中的“API 资源”页面找到资源 URL。)
高级设置

一切就绪!点击“获取新访问令牌”按钮测试你的配置。如果一切正常,你应该会在响应中看到返回的 JWT 访问令牌。

JWT 令牌响应

测试你的访问令牌

  1. 获取令牌后,你可以直接点击 Postman 中的“使用令牌”按钮,自动将令牌添加到你请求的授权头中。
使用 M2M 令牌
  1. 现在,向 Logto 管理 API 端点发送一个请求,例如 GET https://[tenant-id].logto.app/api/applications。你应该会看到你的 Logto 实例中的应用列表作为响应返回。
  2. 如果你的访问令牌过期,你可以“刷新”它,而不必再进行整个过程。

总结

在本教程中,我们学习了如何通过简单的复制粘贴和鼠标点击使用 Postman 获取机器对机器的访问令牌。 借助这个令牌,现在你可以不编写任何代码就可以操作 Logto 管理 API,并探索 Logto 能力的全部潜力。

如果你刚刚开始使用 Logto 管理 API,这是一个快捷而简单的方法,帮助你在不编写任何代码的情况下入门。我们希望你觉得这篇文章有所帮助!