跳转到主要内容

如何创建和管理 OAuth 应用

摘要

OAuth 应用允许外部应用程序代表用户安全地连接到 Astra。用户无需共享凭证,而是登录到 Astra 并明确授予应用程序权限。本指南将解释 OAuth 应用的工作原理、如何创建和管理它们,以及何时使用 OAuth 应用而不是 API 密钥。

说明

什么是 OAuth 应用?

OAuth 应用是您在 Astra 中注册的应用程序,用于允许用户安全地授权访问其工作区。

创建 OAuth 应用时,Astra 会生成:

  • 客户端 ID,用于标识您的应用程序。

  • 客户端密钥,用于验证您的应用程序。

当用户将您的应用程序连接到 Astra 时,他们将被重定向到 Astra 以登录并查看您的应用程序请求的权限。用户批准请求后,才会授予访问权限。

推荐用例

OAuth 应用非常适合:

  • 需要连接到客户 Astra 账户的 SaaS 产品

  • 在访问 Astra 数据前需要用户同意的应用程序

  • 为多个客户或工作区提供服务的多租户应用程序

  • 允许用户通过“连接 Astra”按钮连接其 Astra 账户的集成

何时不使用 OAuth 应用

OAuth 应用可能不适用于:

  • 内部脚本和后端自动化

  • 无需用户交互的系统到系统集成

  • 在单个组织账户下运行的计划任务

对于这些场景,API 密钥通常更易于管理。

如何创建 OAuth 应用

要创建 OAuth 应用:

  • 登录您的 Astra 账户。

  • 前往账户 > OAuth 应用

  • 点击创建应用

  • 输入所需详细信息:

    • 应用名称 – 用户在授权期间看到的名称。

    • 重定向 URI – 用户批准访问后将被发送到的 URL。

    • 作用域 – 您的应用程序所需的权限。

  • 点击创建

重要提示:立即保存您的客户端密钥

应用创建后,Astra 只显示一次客户端密钥

在离开页面之前,请复制并安全地存储客户端 ID 和客户端密钥。

之后,Astra 将继续显示客户端 ID,但无法再次查看完整的客户端密钥。

了解重定向 URI

重定向 URI 是 Astra 在用户批准或拒绝访问您的应用程序后将用户发送到的目标。

授权期间提供的重定向 URI 必须与为 OAuth 应用注册的重定向 URI 中的一个精确匹配。如果值不匹配,授权请求将失败。

重定向 URI 示例

生产环境:

https://your-app.com/oauth/callback

本地开发环境:

http://localhost:8787/callback

了解作用域

作用域定义了您的应用程序可以从 Astra 请求的权限。

用户可以在决定是否授权您的应用程序之前查看这些权限。

可用作用域

作用域

描述

全部

完全访问所有可用的公共 API 功能

聊天

与代理聊天

代理:读取

查看代理

代理:写入

创建、更新和管理代理

联系人:读取

查看联系人

联系人:写入

创建、更新和管理联系人

对话:读取

查看对话历史记录

知识:读取

查看知识库

知识:写入

创建、更新和管理知识库

Webhook:管理

创建和管理 Webhook

分析:读取

访问分析数据

处理 OAuth 应用的最佳实践

仅请求您需要的权限

仅请求应用程序功能所需的范围。

请求更少的权限有助于用户了解您的应用程序可以访问的内容,并提高授权过程中的信任度。

授权流程如何工作(用户体验)

当用户将您的 OAuth 应用连接到 Astra 时:

  • 用户在您的应用程序中点击“连接 Astra”。

  • 用户将被重定向到 Astra 的授权页面。

  • Astra 会显示应用程序名称和请求的权限。

  • 如果用户尚未登录,Astra 会要求用户登录。

  • 用户点击“授权”或“拒绝”。

  • 如果获准,Astra 会将用户重定向到配置的重定向 URI。

  • 您的应用程序会收到授权凭证,并可以代表用户访问 Astra。

这对用户意味着什么

  • 用户永远不需要与您的应用程序共享其 Astra 密码。

  • 每个用户分别授予访问权限。

  • 访问仅限于用户授权的工作区。

  • 用户可以通过断开应用程序的连接随时删除访问权限。

管理 OAuth 应用

OAuth 应用”页面显示所有已注册的应用程序。

您可以查看现有应用并删除不再需要的应用程序。

如何删除 OAuth 应用

要删除 OAuth 应用:

  • 登录您的 Astra 账户。

  • 打开账户OAuth 应用

  • 找到您要删除的应用程序。

  • 删除该应用程序。

  • 确认操作。

删除应用后会发生什么?

删除 OAuth 应用时:

  • 无法再发起新的授权请求。

  • 现有访问令牌将被撤销。

  • 已连接的用户将立即失去访问权限。

  • 如果创建了替代应用,用户必须重新连接。

OAuth 应用 vs. API 密钥

应选择哪个选项?

使用下表确定最适合您用例的身份验证方法。

OAuth 应用

API 密钥

目标用户

客户和最终用户

内部系统和后端服务

是否需要用户授权

用户同意屏幕

是否支持多个客户

凭证类型

可以刷新的短期访问令牌

长期 API 密钥

典型用例

“连接您的 Astra 账户”集成

自动化数据同步或内部工作流程

  • 当用户需要连接其 Astra 账户并向您的应用程序授予权限时,请使用OAuth 应用

  • 当您要构建内部自动化、后端服务或在没有用户交互的情况下运行的集成时,请使用API 密钥

这是否解答了您的问题?