> 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/pentesuto/configure-a-pentest/setting-up-authenticated-testing.md).

# テストユーザーの設定

IDOR、権限昇格、ロジックバグを含む最も重大な脆弱性は、ログイン画面の向こう側にあります。それらを見つけるには、Aikido の Pentest エージェントにアクセス権が必要です。

複雑な Selenium スクリプトやプロキシ録画を必要とする従来のツールとは異なり、Aikido は LLM 駆動のアプローチを採用しています。人間の QA テスターに説明するのと同じように、自然言語でエージェントにログイン方法を伝えるだけです。

認証セットの設定方法は次のとおりです。

{% stepper %}
{% step %}
**テストユーザーを作成**

1. クリック **テストユーザーを追加**.
2. **名前：** このセットに説明的な名前を付けてください（例： `管理者ユーザー`, `読み取り専用ユーザー`, `テナント A - マネージャー`).

{% hint style="info" %}
異なる権限レベル間での Broken Access Control（BAC）をテストするために、複数のペルソナを設定することを推奨します。
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/f68aea6d35808bf9c9032719877c0274f3bf2a65" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**ログイン手順を提供**

これが最も重要なステップです。 **認証手順** フィールドに、ログインフローの手順をテキストで段階的に記述してください。

AI エージェントはこれを解析して、あなた特有の UI の癖に対応します。具体的に記述してください。

**記入例：**

> 次へ移動: `staging.app.com/login`
>
> 「ユーザー名でログイン」をクリック
>
> ユーザー名を入力： `pentest_admin`
>
> パスワードを入力： `super_secure_password_123`
>
> 「サインイン」ボタンをクリック

{% hint style="info" %}
AI エージェントには標準的な CAPTCHA を自動的に解決する機能が備わっています。スキャンのためにこれらを無効にしたり、個別の指示を与えたりする必要はありません。
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/1260502aa1c39ff254725637ab955445e789c9b4" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**設定をテスト**

最後に、エージェントがあなたの指示を解釈できることを確認してください：

1. クリック **保存してテスト**.
2. エージェントはブラウザーセッションを起動し、資格情報と受信トレイの指示を使ってログインを試みます。
3. 成功すると、エージェントが認証し、ログイン後の状態に到達したことを示す確認メッセージが表示されます。

<div data-with-frame="true"><figure><img src="/files/726ecb94de086b9f6e89ac02a9b6f7c822bf8512" alt=""><figcaption></figcaption></figure></div>
{% endstep %}
{% endstepper %}

### 高度なログインフロー

アプリケーションが単純なユーザー名とパスワード以上を必要とする場合は、専用ツールを使用してください：

* [**メール認証とマジックリンク：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/handling-email-verification-and-magic-links.md) メール内のリンクをクリックしたり、コードを受け取ったりする必要がある場合。
* [**二要素認証（TOTP）：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/handling-two-factor-authentication-totp.md) 認証アプリから6桁のコードを生成する必要がある場合。
* [**SMS 認証：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/handling-sms-verification.md) SMS ベースの確認コードを扱う必要がある場合。
* [**エージェントが新しいアカウントを作成：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/agent-creates-new-account.md) 自然言語の指示から、使い捨てのテストユーザーをエージェントに生成させます。これは複数ロールのカバレッジに役立ちます。

ベンダー固有の認証フロー：

* [**Google 認証：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/google-auth.md) Google Workspace のログインフローのネイティブサポートはベータ版で利用できます。
* [**Microsoft 認証：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/microsoft-auth.md) 2 段階認証を有効にした Microsoft アカウントをサポートします。
* [**Auth0 の設定：**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/oauth0-configuration.md) 複数のエージェント間でのセッション共有をサポートするために必要な OAuth プロバイダー設定。

### OAuth および JWT アプリ

Aikido Pentest は、テストユーザーごとに 1 つの認証済みセッションを共有する多数のエージェントを並列で実行します。同じリフレッシュトークンがエージェント間で再利用され、評価期間中そのセッションを維持します。

これを確実に機能させるには、ID プロバイダー（Auth0、Cognito、Azure AD / Entra ID、Keycloak、カスタム OIDC など）を次のように設定する必要があります：

* **リフレッシュトークンは再利用可能であること。** 単回使用のリフレッシュトークンと、交換時に前のトークンを無効化するリフレッシュトークンのローテーションを無効にしてください。
* **リフレッシュトークンの有効期間が評価期間を超えていること。** 一般的なペンテストは数時間続くことがあるため、有効期間をそれに応じて設定してください（例：7200 秒超）。
* **短命なアクセストークン（JWT）は問題ありません** 上記の条件でリフレッシュが機能する限りは。

{% hint style="warning" %}
**よくある失敗モード：** 単回使用またはローテーションするリフレッシュトークンでは、最初のエージェントのリフレッシュでトークンが消費されます。ほかのエージェントは、すでに無効になったトークンで保存済みセッションを再読み込みし、…で失敗します。 **403** そのため、アクセストークンが期限切れになると、リフレッシュ時に行き詰まってしまいます。

症状は、事前チェックは成功するものの、評価の途中でエージェント全体に認証失敗が大量発生することです。
{% endhint %}

Auth0 については、次の手順に従って設定してください： [**Auth0 の設定**](/docs/docs-ja/pentesuto/configure-a-pentest/setting-up-authenticated-testing/oauth0-configuration.md)。同じチェックリストは他の OIDC プロバイダーにも適用できます。

### ベストプラクティス

* **本番の認証情報を使わない：** ペンテストは必ずステージングまたは QA 環境で実行してください。スキャナーはデータを破損させる可能性のある侵入的なテストを実行します。
* **専用のテストアカウントを作成する：** 個人の開発者アカウントは使用しないでください。スキャナー専用のアカウントを作成してください（例： `aikido-scanner@yourdomain.com`).
* **すべてのテナントを対象にする：** アプリがマルチテナントの場合は、異なるテナントのユーザーの認証情報を追加してください（例： `ユーザー - テナント A`, `ユーザー - テナント B`）。これにより、AI はテナント間のデータ漏えいをテストできます。

### トラブルシューティング

認証は次の間に検証されます： **事前チェック** 起動直後。成功するかどうかをリアルタイムでエージェントの画面で確認できます。

エージェントのログインに失敗した場合：

* **失敗内容を確認する：** エラーログ内のエージェントのスクリーンショットを確認して、どこで止まったのかを正確に把握してください。
* **簡易確認の手順：** 提供した手順をシークレットウィンドウで手動でたどってみてください。手順を飛ばしていたり、ボタンが分かりにくかったりすると、エージェントがうまく進めないことがあります。
* **アクセス性を確認する：** URL はパブリックインターネットから到達可能ですか？（IP ホワイトリスト設定を確認してください）。
* **アカウントの状態：** テストユーザーがロックアウトされていないことを確認してください。


---

# 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/pentesuto/configure-a-pentest/setting-up-authenticated-testing.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.
