使用 Postman 在几分钟内获取 M2M 访问令牌
了解如何使用 Postman 获取机器对机器的访问令牌,并在几分钟内调用 Logto 管理 API。
背景
Logto 管理 API 是一组 API,能够让开发者完全控制他们的 Logto 实例,支持诸如管理用户、自定义登录体验以及程序化管理组织等任务。 要访问这些 API,需要通过机器对机器 (M2M) 流程进行身份验证,以获取访问令牌。
在我们之前的文章中,我们已经通过分步指南介绍了如何使用 Logto 管理 API,并展示了典型场景以探索其全部潜力。
尽管有这些资源,我们的一些用户仍然发现一开始非常困难 - 获取访问令牌。 在评估 API 或快速构建原型时,在服务器代码中设置完整的 M2M 身份验证流程可能看起来像是不必要的麻烦。有时,你只需要快速获取一个令牌。
幸运的是,现在有一种方法可以做到这一点,甚至不需要编写一行代码,只需使用几乎每个开发者机器上都有的工具 - Postman。
让我们快来学习如何在几分钟内完成这一操作。
前提条件
- Postman:如果还没有,请下载并安装 Postman。
- 一个 Logto 实例:可以是 Logto Cloud 帐户,或自托管实例。
在 Logto 管理控制台中创建一个 M2M 应用
按照本教程中的步骤创建 M2M 应用,并为其分配内置的 M2M 角色。
默认情况下,该角色将为 M2M 应用授予 all
权限。稍后你可以使用细粒度的访问控制来自定义你的 M2M 角色。
配置 Postman
- 创建一个新请求,并在“认证”选项卡中,选择
Oauth 2.0
作为认证类型。
-
向下滚动到“配置新令牌”部分,并填写以下字段:
-
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
。
-
-
在“高级”部分,找到“Token Request”,添加以下键值对,并确保它们在
Request Body
中发送:- resource:
https://[tenant-id].logto.app/api
(你可以在 Logto 管理控制台中的“API 资源”页面找到资源 URL。)
- resource:
一切就绪!点击“获取新访问令牌”按钮测试你的配置。如果一切正常,你应该会在响应中看到返回的 JWT 访问令牌。
测试你的访问令牌
- 获取令牌后,你可以直接点击 Postman 中的“使用令牌”按钮,自动将令牌添加到你请求的授权头中。
- 现在,向 Logto 管理 API 端点发送一个请求,例如
GET https://[tenant-id].logto.app/api/applications
。你应该会看到你的 Logto 实例中的应用列表作为响应返回。 - 如果你的访问令牌过期,你可以“刷新”它,而不 必再进行整个过程。
总结
在本教程中,我们学习了如何通过简单的复制粘贴和鼠标点击使用 Postman 获取机器对机器的访问令牌。 借助这个令牌,现在你可以不编写任何代码就可以操作 Logto 管理 API,并探索 Logto 能力的全部潜力。
如果你刚刚开始使用 Logto 管理 API,这是一个快捷而简单的方法,帮助你在不编写任何代码的情况下入门。我们希望你觉得这篇文章有所帮助!