> ## Documentation Index
> Fetch the complete documentation index at: https://docs.livingsecurity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 認証

> 連携に使用する API キーまたは OAuth クライアント認証情報を選択し、それぞれがサービスアカウントをどのように使用するかを理解します。

**Public API を使用するために OAuth は必須ではありません。** プライベートなサーバーサイド連携の場合は、スコープを限定した API キーから始め、[クイックスタート](/ja/developers/v1/quickstart)に従ってください。セキュリティポリシーで有効期間の短いアクセストークンが求められる場合、または使用している連携プラットフォームがすでにそのフローをサポートしている場合は、OAuth クライアント認証情報を選択してください。

どちらのオプションもサービスアカウントを使用します。サービスアカウントは連携の ID であり、3 つ目の認証方式ではありません。

## 各要素の関係

| 項目 | 目的 | 連携が送信する内容 |
| - | - | - |
| **サービスアカウント** | ワークロードに名前を付け、権限の上限を定義します。 | その ID はアカウントを識別しますが、リクエストの認証には使用されません。 |
| **API キー** | 選択した権限セットと有効期限を持つ、そのサービスアカウントとして直接認証します。 | HTTP Basic 認証または `Authorization: Bearer <api_key_secret>` を使用したキーシークレット。 |
| **OAuth クライアント** | トークンサービスに対して認証を行い、そのサービスアカウント用のスコープ付きアクセストークンを取得します。 | `Authorization: Bearer <access_token>` を使用したアクセストークン。 |

連携ごとに 1 つの[サービスアカウント](/ja/developers/developer-hub/service-accounts)を作成してください。そのアカウントに対して API キーまたは OAuth クライアントのいずれかを選択します。各 API リクエストで両方の方式が必要になることはありません。どちらの認証情報も、アカウントの現在の権限を超えることはできません。

クイックスタートでは Basic 認証を使用します。API キーでは Bearer ヘッダーもサポートされていますが、このヘッダーを使用することは OAuth クライアントが必要であることを意味しません。

## シンプルな連携には API キーを選択する

自社のスケジュールジョブ、レポート作成スクリプト、データパイプライン、その他のバックエンドサービスで、シークレットマネージャーに保存したシークレットがセキュリティ要件を満たす場合は、API キーを使用してください。

* トークン交換を行わずに、認証済みリクエストを直接送信できます。
* ワークロードに必要な権限のみを選択し、有効期限を設定します。
* オーバーラップ期間を利用してキーをローテーションするか、漏えいした場合はただちに失効させます。

API キーを使用する連携に OAuth クライアントは必要ありません。まず[クイックスタート](/ja/developers/v1/quickstart)を参照し、作成とローテーションについては [API キー](/ja/developers/developer-hub/api-keys)を参照してください。

## 有効期間の短いアクセストークンには OAuth を選択する

組織で有効期限付きのアクセストークンが求められる場合、または連携ツールが `client_credentials` グラントを前提としている場合に、機密性の高いバックエンドサービス向けとして OAuth クライアント認証情報を使用してください。

1. サービスアカウント用に、スコープを限定した OAuth クライアントを作成します。
2. セットアップ時に提供されたクライアント認証方式を使用して、リージョン別のトークンエンドポイントに対してクライアントを認証します。
3. 取得したアクセストークンを API リクエストとともに送信します。現在のトークンの有効期限が切れる前に、新しいトークンを取得してください。

OAuth を使用すると、連携にトークンの取得と有効期限の処理が加わります。クライアントシークレットの安全な保管とローテーションは引き続き必要です。有効期間の短いトークンを使用しても、この責任がなくなるわけではありません。クライアント認証情報フローではリフレッシュトークンは使用しません。新しいアクセストークンを取得するには、クライアントを再度認証してください。

OAuth アクセスは、組織で有効化されている必要があります。有効化されていない場合は、API キーを使用するか、要件について Living Security サポートにお問い合わせください。クライアントの作成、一度のみ表示されるシークレット、失効、復旧については、[OAuth クライアント認証情報](/ja/developers/v1/oauth)を参照してください。

## 認証情報はバックエンドで管理する

サービスアカウントの API キーと OAuth クライアントシークレットは、サーバーサイドのシークレットストレージで保管してください。ブラウザーコード、モバイルアプリ、ソース管理、ログには含めないでください。サービスアカウントの認証情報はワークロードとして動作するものであり、個人のサインインやお客様の同意フローを提供するものではありません。

どちらの方式でも、組織に対応する[リージョン別 API ホスト](/ja/developers/v1/regions)を使用してください。認証方式を変更しても、リソース URL、API バージョン、操作に必要な権限は変わりません。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.