跳转到内容
搜索文档

使用 CLI 通过 Cloudflare Access 进行连接

最后更新 查看 MarkdownAgent 设置

Cloudflare 的 cloudflared 命令行工具允许您与受 Cloudflare Access 保护的端点进行交互。您可以使用 cloudflared 与受保护应用程序的 API 进行交互。

这些说明不适用于配置服务以针对 API 运行。此示例中的令牌针对用户身份进行了定制,仅适用于最终用户通过命令行工具与 API 进行交互。

本演练涵盖了如何:

  • 从 CLI 连接到由 Cloudflare Access 保护的资源

完成所需时间:

30 分钟


从命令行验证会话

安装 cloudflared之后,您可以使用它来检索 Cloudflare Access 应用程序令牌。本演练使用域名 example.com 代替受保护的 API。

  1. 要生成令牌,请运行以下命令:

    cloudflared access login https://example.com

    运行此命令后,cloudflared 会启动一个浏览器窗口,其中包含在尝试访问 Web 应用程序时看到的相同 Access 登录页面。

  2. 选择您的身份提供商并登录。

如果浏览器窗口未启动,您可以使用自动打印到命令行的唯一 URL。

  1. 成功进行身份验证后,浏览器会通过加密传输将令牌返回给 cloudflared 并进行存储。

令牌在 Access 管理员配置的会话持续时间内有效。

访问您的 API

检索到令牌后,您就可以访问受保护的 API。cloudflared 命令行工具包含一个用于通过 curl 传输数据的包装器,该包装器使用 URL 语法(有关更多信息,请参阅 curl GitHub 项目)。该包装器将令牌作为名为 token 的查询参数注入到 curl 请求中。您可以如下调用该包装器:

cloudflared access curl http://example.com

也可以对任何 Unix 工具结合 cloudflared 使用 put 命令,以便在请求中包含该令牌。

继续阅读以了解其他可用命令。

可用命令

login

login 命令启动 Access 后端应用程序的登录流程。

cloudflared access login http://example.com

curl

curl 命令调用客户端包装器,并自动在请求中包含该令牌。

cloudflared access curl http://example.com

token

token 命令检索限定于该特定应用程序范围的令牌,以便在其他命令行工具中使用。

cloudflared access token -app=http://example.com

将令牌用作环境变量

为了方便和保持脚本简洁,在访问受保护的应用程序时,可以将令牌保存为环境变量。

按如下方式将令牌设置为环境变量:

  1. 运行以下命令将令牌导出到 shell 环境:

    export TOKEN=$(cloudflared access token -app=http://example.com)
  2. 使用以下命令确认令牌已保存:

    echo $TOKEN

将令牌导出到环境后,在脚本中将该变量与 Cloudflare Access 请求标头一起使用以访问受保护的端点,如以下示例所示:

curl -H "cf-access-token: $TOKEN" https://example.com/rest/api/2/item/foo-123

这篇文档对您有帮助吗?