文档浏览器与 CrawlAgent Browser认证与身份

概述

Scrapeless 凭证系统旨在帮助开发者安全地存储、管理和检索凭证数据,以便在自动化浏览器会话中使用。

在实际应用中,该系统允许开发者通过 API 管理、读取和更新凭证,同时浏览器自动化脚本或 AI agent 可以按需自动填充和访问这些凭证。 通过使用 Scrapeless 凭证系统,开发者可以:

  • 集中组织和存储针对不同环境或应用的凭证。
  • 安全地检索认证数据并将其注入到浏览器会话中。
  • 允许 AI agent 自动访问和填充凭证数据,而无需在代码库中暴露或硬编码密钥。

核心安全原则
Scrapeless 认证层遵循三项关键原则:

  • 安全存储: 凭证在存储和传输过程中均使用企业级标准进行加密。
  • 受控访问: 只有经授权的 API token 才能读取凭证,从而完全掌控数据的访问和使用方式。
  • 会话隔离: 注入的凭证在使用后无法再被访问,可防止任何形式的数据泄露或重放攻击。

1Password 集成

通过与 1Password 集成,开发者可以将其 1Password 保险库安全地连接到 Scrapeless,从而安全地检索用于浏览器自动化场景的密钥或凭证。

集成完成后,开发者可以直接从 1Password 读取凭证,并通过 API 将其注入到 Scrapeless 浏览器会话中——从而提供一种简化且安全的方式来处理认证数据。

前提条件

在使用 1Password 集成之前,你需要:

  1. 1Password 账户: 一个有效的 1Password 账户,可访问你想要使用的密钥,且这些密钥位于非 “Personal” 的保险库中。
  2. Scrapeless API Key: 用于认证的 Scrapeless Browser API key。
  • 创建账户并登录 Scrapeless Dashboard。
  • 生成你的 Scrapeless API key。 image1.png

获取 1Password 服务账户 Token

  1. 登录你的 1Password 账户
  2. 导航至 Developer → Directory → Service Accounts
  3. 点击 Create Service Account
  4. 为你的服务账户取一个描述性名称(例如 “Scrapeless Browser Automation”)
  5. 授予该服务账户访问包含所需密钥的保险库的权限
  6. 复制服务账户 token(以 ops_ 开头)——你将在集成设置中用到它
安全提示

请妥善保管你的服务账户 token。它提供了对你 1Password 密钥的访问权限,应像对待密码一样对待它。

快速开始

1. 创建 1Password 集成

使用此端点配置用于访问保险库的 1Password API token。系统会在存储 token 之前对其进行验证。

API: PUT /browser/one-password/token

curl 请求示例:

curl -X PUT https://api.scrapeless.com/browser/one-password/token \
  -H "x-api-token: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "test",
    "token": "ops_eyJzaWduSW5BZGa13Da..."
  }'

参数

参数类型必填描述
namestring✓授权集成的名称,用于标识此 1Password 配置。
tokenstring✓1Password API 访问 token。

2. 通过引用检索单个密钥

使用引用从 1Password 中检索单个密钥。

API: POST /browser/one-password/secret

示例(curl):

curl -X POST https://api.scrapeless.com/browser/one-password/secret \
  -H "x-api-token: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "reference": "op://[vault]/[item]/[field]"
  }'

参数

参数类型必填描述
referencestring✓1Password 中密钥的引用,格式为 op://[vault]/[item]/[field]。

3. 通过引用检索多个密钥

在单个请求中使用引用数组从 1Password 检索多个密钥。

API: POST /browser/one-password/secrets

示例(curl):

curl -X POST https://api.scrapeless.com/browser/one-password/secrets \
  -H "x-api-token: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "references": [ 
      "op://[vault]/[item]/[field1]",
      "op://[vault]/[item]/[field2]",
      "op://[vault]/[item]/[field3]"
    ]
  }'

参数

参数类型必填描述
referencesarray of strings✓1Password 中密钥引用的数组,格式为 op://[vault]/[item]/[field]。

4. 撤销 1Password 授权

一旦撤销,对存储在 1Password 中密钥的访问将被禁用,直到配置新的 token。

API: DELETE /browser/one-password/token

curl 请求示例:

curl -X DELETE https://api.scrapeless.com/browser/one-password/token \
  -H "x-api-token: YOUR_API_KEY"

故障排查

集成创建失败

  • 服务账户 Token 无效: 请验证你的 token 是否以 ops_ 开头且有效。
  • 权限不足: 请确保服务账户有权访问所需的保险库。

密钥无法加载

  • 密钥引用无效: 请检查密钥引用的格式(op://vault/item/field)。
  • 服务账户访问权限: 请验证服务账户有权访问指定的保险库和项目。
  • 未找到项目或字段: 请确保保险库、项目和字段名称正确且存在。

环境变量不可用

  • 检查密钥引用格式: 请确保你的密钥引用遵循正确的格式。
  • 验证集成 ID: 请确保在会话配置中使用了正确的集成 ID。

团队凭证管理

团队凭证管理 API 允许你安全地为应用和服务创建、更新、检索和删除团队级凭证。每个凭证都可以与特定的 origin 和 namespace 关联,以支持多环境配置。

快速开始

1. 创建团队凭证

为团队创建新的凭证配置,以存储和管理应用所需的认证数据。

API: POST /browser/credentials

curl 请求示例:

curl -X POST 'https://api.scrapeless.com/browser/credentials' \
  -H "x-api-token: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "https://example.com",
    "namespace": "production",
    "metadata": {
      "username": "admin",
      "password": "secure_password"
    }
  }'

参数

参数类型必填描述
originstring✓应用或服务的 origin。
namespacestringx可选的 namespace,用于限定凭证的作用范围。
metadataobject✓应用所需认证数据的键值对。

2. 更新团队凭证

更新现有的团队凭证配置。

API: PUT /browser/credentials

curl 请求示例:

curl -X PUT 'https://api.scrapeless.com/browser/credentials' \
  -H "x-api-token: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "https://example.com",
    "namespace": "production",
    "metadata": {
      "username": "new_admin",
      "password": "new_secure_password"
    }
  }'

参数

参数类型必填描述
originstring✓应用或服务的 origin。
namespacestringx可选的 namespace,用于限定凭证的作用范围。
metadataobject✓应用所需的更新后认证数据的键值对。

3. 获取团队凭证

通过 origin 和可选的 namespace 检索团队凭证。

API: GET /browser/credentials

curl 请求示例:

curl -X GET 'https://api.scrapeless.com/browser/credentials?origin=https://example.com&namespace=production' \
  -H "x-api-token: YOUR_API_TOKEN"

参数

参数类型必填描述
originstring✓应用或服务的 origin。
namespacestringx可选的 namespace,用于限定凭证的作用范围。

4. 删除团队凭证

删除特定的团队凭证配置。

API: DELETE /browser/credentials

cURL 示例:

curl -X DELETE 'https://api.scrapeless.com/browser/credentials' \
  -H "x-api-token: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "https://example.com",
    "namespace": "production"
  }'

参数

参数类型必填描述
originstring✓应用或服务的 origin。
namespacestringx可选的 namespace,用于限定凭证的作用范围。

支持

如需 1Password 集成的额外帮助: