Browser特徴Authentication and Identity

概要

Scrapelessクレデンシャルシステムは、開発者が自動ブラウザセッションで使用するクレデンシャルデータを安全に保存、管理、および取得するのに役立つように設計されています。

実際には、このシステムにより、開発者はAPIを通じてクレデンシャルを管理、読み取り、更新できる一方、ブラウザ自動化スクリプトやAIエージェントは必要に応じてこれらのクレデンシャルを自動的に入力およびアクセスできます。 Scrapelessクレデンシャルシステムを使用することで、開発者は以下のことが可能になります。

  • 異なる環境やアプリケーションのクレデンシャルを一元的に整理して保存する。
  • 認証データを安全に取得し、ブラウザセッションに注入する。
  • AIエージェントが、コードベースでシークレットを公開したりハードコーディングしたりすることなく、クレデンシャルデータに自動的にアクセスして入力できるようにする。

コアセキュリティ原則
Scrapeless認証レイヤーは、次の3つの主要原則に従います。

  • 安全なストレージ: クレデンシャルは、保存中および転送中の両方で、エンタープライズグレードの標準を使用して暗号化されます。
  • 制御されたアクセス: 許可されたAPIトークンのみがクレデンシャルを読み取ることができ、データへのアクセス方法と使用方法を完全に制御できます。
  • セッションの分離: 注入されたクレデンシャルは使用後にアクセスできなくなり、あらゆる形式のデータ漏洩やリプレイ攻撃を防ぎます。

1Password連携

1Passwordとの連携を通じて、開発者は1PasswordのボルトをScrapelessに安全に接続し、ブラウザ自動化シナリオのためにシークレットやクレデンシャルを安全に取得できます。

一度連携すると、開発者は1Passwordから直接クレデンシャルを読み取り、APIを介してScrapelessブラウザセッションに注入できます — これにより、認証データを処理するための簡素化された安全な方法が提供されます。

前提条件

1Password連携を使用する前に、以下のものが必要です。

  1. 1Passwordアカウント: 「Personal」以外のボルトで使用したいシークレットにアクセスできるアクティブな1Passwordアカウント。
  2. Scrapeless APIキー: 認証用のScrapelessブラウザAPIキー。

1Passwordサービスアカウントトークンの取得

  1. 1Passwordアカウントにログインします。
  2. Developer → Directory → Service Accountsに移動します。
  3. Create Service Accountをクリックします。
  4. サービスアカウントに分かりやすい名前を付けます(例:「Scrapeless Browser Automation」)。
  5. 必要なシークレットを含むボルトへのアクセス権をサービスアカウントに付与します。
  6. サービスアカウントトークン(ops_で始まる)をコピーします — これは連携設定に必要になります。
セキュリティに関する注意

サービスアカウントトークンは安全に保管してください。これは1Passwordのシークレットへのアクセスを提供するため、パスワードと同様に扱われるべきです。

はじめに

1. 1Password連携の作成

このエンドポイントを使用して、ボルトにアクセスするための1Password APIトークンを設定します。システムはトークンを保存する前に検証します。

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設定を識別するために使用されます。
tokenstring1Password APIアクセストークン。

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]"
  }'

パラメータ

パラメータタイプ必須説明
referencestring1Password内のシークレットへの参照で、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 strings1Password内のシークレットへの参照の配列で、op://[vault]/[item]/[field]形式です。

4. 1Password認証の取り消し

一度取り消されると、新しいトークンが設定されるまで、1Passwordに保存されたシークレットへのアクセスは無効になります。

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"

トラブルシューティング

連携作成の失敗

  • 無効なサービスアカウントトークン: トークンがops_で始まり、有効であることを確認してください。
  • 権限不足: サービスアカウントが必要なボルトへのアクセス権を持っていることを確認してください。

シークレットのロードができない

  • 無効なシークレット参照: シークレット参照の形式(op://vault/item/field)を確認してください。
  • サービスアカウントのアクセス: サービスアカウントが指定されたボルトとアイテムへのアクセス権を持っていることを確認してください。
  • アイテムまたはフィールドが見つからない: ボルト、アイテム、フィールドの名前が正しく存在することを確認してください。

環境変数が利用できない

  • シークレット参照形式の確認: シークレット参照が正しい形式に従っていることを確認してください。
  • 連携IDの確認: セッション設定で正しい連携IDを使用していることを確認してください。

チームクレデンシャル管理

チームクレデンシャル管理APIを使用すると、アプリケーションやサービスのチームレベルのクレデンシャルを安全に作成、更新、取得、および削除できます。各クレデンシャルは、複数環境構成をサポートするために、特定のオリジンとネームスペースに関連付けることができます。

はじめに

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アプリケーションまたはサービスのオリジン。
namespacestringxクレデンシャルのスコープを設定するオプションのネームスペース。
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アプリケーションまたはサービスのオリジン。
namespacestringxクレデンシャルのスコープを設定するオプションのネームスペース。
metadataobjectアプリケーションに必要な更新された認証データのキーと値のペア。

3. チームクレデンシャルの取得

オリジンとオプションのネームスペースを使用してチームクレデンシャルを取得します。

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アプリケーションまたはサービスのオリジン。
namespacestringxクレデンシャルのスコープを設定するオプションのネームスペース。

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アプリケーションまたはサービスのオリジン。
namespacestringxクレデンシャルのスコープを設定するオプションのネームスペース。

サポート

1Password連携に関する追加のヘルプについては、以下を参照してください。

  • 1Passwordサービスアカウントドキュメント
  • Scrapelessサポート(market@scrapeless.com)までお問い合わせください。