Skip to content
このページは AI の支援により作成・翻訳されました。誤りがあれば、改善にご協力ください。 GitHub で編集

認証 ​

OpenPRはユーザー認証にJWT(JSON Web Tokens)、AIアシスタントとMCPサーバーアクセスにボットトークンを使用します。

ユーザー認証(JWT) ​

登録 ​

新しいアカウントを作成:

bash
curl -X POST http://localhost:8080/api/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "name": "John Doe",
    "password": "SecurePassword123"
  }'

レスポンス:

json
{
  "code": 0,
  "message": "success",
  "data": {
    "user": {
      "id": "uuid",
      "email": "[email protected]",
      "name": "John Doe",
      "role": "user"
    },
    "access_token": "eyJ...",
    "refresh_token": "eyJ..."
  }
}

最初のユーザー

最初に登録したユーザーが自動的にadminロールを取得します。それ以降のすべてのユーザーはデフォルトでuserになります。

ログイン ​

bash
curl -X POST http://localhost:8080/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "password": "SecurePassword123"
  }'

レスポンスにはaccess_token、refresh_token、role付きのユーザー情報が含まれます。

アクセストークンの使用 ​

すべての認証リクエストのAuthorizationヘッダーにアクセストークンを含める:

bash
curl -H "Authorization: Bearer eyJ..." \
  http://localhost:8080/api/workspaces

トークンのリフレッシュ ​

アクセストークンの期限が切れた場合、リフレッシュトークンを使用して新しいペアを取得:

bash
curl -X POST http://localhost:8080/api/auth/refresh \
  -H "Content-Type: application/json" \
  -d '{"refresh_token": "eyJ..."}'

現在のユーザーを取得 ​

bash
curl -H "Authorization: Bearer eyJ..." \
  http://localhost:8080/api/auth/me

role(admin/user)を含む現在のユーザープロファイルを返します。

トークン設定 ​

JWTトークンの有効期間は環境変数で設定されます:

変数デフォルト説明
JWT_SECRETchange-me-in-productionトークン署名用の秘密鍵
JWT_ACCESS_TTL_SECONDS2592000(30日)アクセストークンの有効期間
JWT_REFRESH_TTL_SECONDS604800(7日)リフレッシュトークンの有効期間

プロダクションセキュリティ

プロダクションではJWT_SECRETを必ず強力でランダムな値に設定してください。デフォルト値は安全ではありません。

ボットトークン認証 ​

ボットトークンはAIアシスタントと自動化ツールに認証を提供します。ワークスペーススコープでopr_プレフィックスを使用します。

ボットトークンの作成 ​

ボットトークンはワークスペース設定UIまたはAPIで管理されます:

bash
curl -X POST http://localhost:8080/api/workspaces/<workspace_id>/bots \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <admin_token>" \
  -d '{"name": "Claude Assistant"}'

ボットトークンの使用 ​

ボットトークンはJWTトークンと同じ方法で使用されます:

bash
curl -H "Authorization: Bearer opr_abc123..." \
  http://localhost:8080/api/workspaces/<workspace_id>/projects

ボットトークンのプロパティ ​

プロパティ説明
プレフィックスopr_
スコープ1つのワークスペース
エンティティタイプbot_mcpユーザーエンティティを作成
権限ワークスペースメンバーと同等
監査証跡すべての操作がボットユーザー下で記録

認証エンドポイントまとめ ​

エンドポイントメソッド説明
/api/auth/registerPOSTアカウントを作成
/api/auth/loginPOSTログインしてトークンを取得
/api/auth/refreshPOSTトークンペアをリフレッシュ
/api/auth/meGET現在のユーザー情報を取得

次のステップ ​

Released under the Apache-2.0 License.