> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/docs/docs-ja/dast-sfesu/api-scanning/authenticated-api-scanning-for-rest-graphql.md).

# REST/GraphQL向け認証済みAPIスキャン

このガイドでは、Aikido で認証済みドメインスキャンを設定する手順を順を追って説明し、包括的で安全な評価を確実に行えるようにします。

> API スキャンは Pro プランと Advanced プランでのみ利用できます

## ユースケース <a href="#use-cases" id="use-cases"></a>

* Webサイトの保護された領域に対して、包括的なセキュリティ評価を確実に実施します。
* API の認証済みセクションにある脆弱性を特定します。

## ドメインで認証を設定する <a href="#setting-up-authentication-on-a-domain" id="setting-up-authentication-on-a-domain"></a>

**手順 1:** へ移動してください [**ドメインの概要**](https://app.aikido.dev/settings/domains) そして、三点メニューをクリックして、お好みの REST/GraphQL API ドメインのアクションメニューを開き、選択 **ドメインを認証する。**

![ドメインをスキャン、設定、認証、または削除するためのオプションがあるドメインのアクションメニュー。](/files/fbfbe1eb006e9bb9d94b653fb4c707db19fdf702)

**手順 2:** 認証するための希望するオプションを選択してください。

![複数のログイン方法オプションと認証情報入力欄を備えた認証設定画面。](/files/ef8ba302b11250aa1e7190227940a207cad54dd3)

> すべての種類のスキャン認証情報は PKCS1 暗号化を使用して安全に保存されます

## 認証オプション <a href="#authentication-options" id="authentication-options"></a>

**フォーム経由でログイン**

ドメイン認証用のURLとメールアドレス/パスワードを入力してください。 **テスト** Aikido がその認証情報でドメインにアクセスできるか確認します。

2要素認証が有効な場合は、ワンタイムパスワード情報も入力できます。 [OTP URL とその仕組みについて詳しくは、ドキュメントをご覧ください](/docs/docs-ja/dast-sfesu/miscellaneous/using-2fa-in-front-end-and-api-scans.md).

{% hint style="success" %}

* Microsoft / Google SSO は現在 **しません** サポートされています。回避策として、カスタムヘッダーの Cookie ヘッダーを使って手動で認証し、有効なセッションを渡すことができます。
* 対応していないケースですか？チャットでお知らせください。調査します！
  {% endhint %}

![フォームベースのログイン認証情報を設定するためのドメイン認証設定画面。](/files/4408933e4fda6ff3fa32f937043826079d343523)

Aikido は以下のルールに従ってフォームの送信を試みます：

1. 以下を備えた表示可能なボタンまたは入力欄を見つけます `type=submit` Google や Facebook などの一般的な OAuth オプションを無視しつつ
2. ラベルまたはテキストに基づいてボタンを見つけます。login、log in、submit、sign in など、同一または類似のテキストを探します。複数の言語で行います。
3. 次のような HTML の ID を使ってボタンを見つけます `id=form-submit`
4. ページ上で最初の表示可能なボタンを見つけます

**カスタムヘッダー**

エンドポイントが、作成後に変更されるべきでない固定のキー、Cookie、またはトークンを受け付ける場合、このオプションを使ってカスタムヘッダーとして追加できます。

使用例：

* Cookieの場合: 次の `Cookie` ヘッダー。

  ```
  Cookie: sessionId=38afes7a8
  ```
* JWT Bearerトークンの場合: 次の `認可` ヘッダー

  ```
  Authorization: Bearer <token>
  ```

**OAuthクライアント認証情報**

このオプションは、MFAをバイパスしたい場合に使用できます。Aikidoは、Client Credentialsフローに対するOAuth仕様に従う指定のログインURLにリクエストを送信します。つまり、設定されたログインURLに対して、を含むPOSTリクエストを行います。 `grant_type` に設定される `client_credentials` そして、client\_id と client\_secret をそれぞれユーザー名とパスワードとして含むBasic認証ヘッダーを付けます。

**OAuthパスワードグラント**

OAuthパスワードグラントフローを使用してAPIが直接のユーザー認証情報（ユーザー名とパスワード）を必要とする場合は、このオプションを選択してください。Aikidoは、ログインURLに次の内容を含むPOSTリクエストを送信します `grant_type` を `パスワード`、あなたが提供するユーザー名とパスワードを含みます。APIによっては、クライアントIDとシークレットも必要になる場合があります。

**Basic認証**

API が標準の Basic 認証を使用している場合は、このオプションを選択してください。ユーザー名とパスワードを入力すると、Aikido が必要な `Authorization: Basic ...` ヘッダーを API へのすべてのリクエストに付与します。

**AIエージェント経由でログイン（ベータ版）**

AIエージェントはLLMを使用して、実際のブラウザーセッションを操作します。人間と同じように、あなたが提供した指示に従って認証プロセスを完了します。次のようなケースに適しています：

* フォームベースのログイン
* 固定OTPまたはワンタイムコード
* 複数ステップの認証フロー
* カスタムまたは標準外のログイン画面

<figure><img src="/files/292e85cb8d7a2efb2a513cf1c01f466354faa398" alt="" width="563"><figcaption></figcaption></figure>

資格情報や必要な操作を含め、明確な手順を順番に指示してください。エージェントは、詳細な設定なしでリダイレクト、動的ページ、中間ステップを処理できます。ほとんどの場合、短くシンプルな指示で十分です。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.aikido.dev/docs/docs-ja/dast-sfesu/api-scanning/authenticated-api-scanning-for-rest-graphql.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
