サービス アカウントの概要
サービス アカウントは、個人に関連付けられていない特殊な Data Center アカウントです。代わりに、Jira、Confluence、またはその他の Data Center 製品にアクセスする必要があるサービス、統合、スクリプト、またはアプリを表します。
ユーザー アカウントとは異なり、サービス アカウントは以下のとおりです。
OAuth 2.0 を使用して認証します (パスワードは不要)。
UI または REST API を使用して作成および管理できます。
ユーザー アカウントと同じ方法で管理されます。
サービス アカウントの管理には UI の使用をお勧めしますが、自動化と統合には REST API を使用できます。
サービス アカウントと OAuth 2.0
サービス アカウントは、Data Center 製品にアクセスする際に、パスワードなしの安全な認証のために OAuth 2.0 クライアント認証フローを使用します。
サービス アカウントを作成すると、クライアント ID とクライアント シークレットを受け取ります。
これらの認証情報により、アクセス トークンをリクエストできます。
このトークンは、その後、API リクエストの認証に使用されます。
アクセス トークンのリクエスト
以下のパラメーターを使用して、トークン エンドポイントに POST
リクエストを行います。
grant_type
: これをclient_credentials
に設定します。client_id
: サービス アカウントのクライアント ID。client_secret
: サービス アカウントのクライアント シークレット。scope
: アクセス トークンがリクエストされるスコープのスペース区切りリスト。
リクエストの例は次のとおりです。
curl -X POST https://your-dc-instance/rest/oauth2/latest/token \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -d "client_id=YOUR_CLIENT_ID" \ -d "client_secret=YOUR_CLIENT_SECRET" \ -d "scope=YOUR_SCOPES"
応答には、限られた時間 (通常は 1 時間) 有効なアクセス トークンが含まれます。
リフレッシュ トークンはサポートされていません。
トークンの有効期限が切れたら、同じ認証情報を使用して新しいトークンをリクエストします。
API リクエストにおけるアクセス トークンの使用
curl -X GET https://your-dc-instance/rest/some-endpoint \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN"