
# Bug Bountyプログラムの設定

## 前提条件

Bug Bountyプログラムを作成する前に、以下の要件を満たしていることを確認してください。

* **Can Manage Pentests** 権限が必要です。ユーザーアクセスの管理について詳しくは、[setting-roles-and-permissions.md](https://help.aikidogov.us/docs/docs-ja/getting-started/automated-user-management/setting-roles-and-permissions "mention") を参照してください。
* ワークスペースでBug Bounty機能が有効になっている必要があります。この機能は現在 **クローズドベータ** です。アクセスをリクエストするには、Aikidoの右下にある **Intercomチャット** を開いてください。

## Bug Bountyの設定

{% stepper %}
{% step %}
**プログラムを作成する**

左側のナビゲーションで **Bug Bounty** に移動します。

**Add Program** をクリックし、プログラム名を入力します。
{% endstep %}

{% step %}
**スコープを定義する**

プログラムのターゲットURLを定義します。これは、レポートが送信された際にAIエージェントがテストを行う対象です。

{% hint style="warning" %}
**テスト環境を使用してください：** Bug Bountyの評価では、アプリケーションに対してアクティブなテストが行われます。本番環境のユーザーへの影響を避けるため、スコープはステージング環境またはQA環境に向けてください。
{% endhint %}
{% endstep %}

{% step %}
**許可されたドメイン**

どのドメインがスコープ内で、どのドメインがアクセスは許可されるもののアクティブなテストの対象外であるかを指定します。明示的に記載されていないドメインはすべてブロックされます。

* **スコープ内：** AIエージェントによってアクティブにテストされるドメイン。
* **アクセス許可：** エージェントがやり取りできる（例：認証プロバイダー）が、攻撃は行わないドメイン。
* **ブロック：** 安全のため、それ以外はすべてデフォルトでブロックされます。
{% endstep %}

{% step %}
**テストユーザーを追加する**

AIエージェントがアプリケーションのテスト時に認証できるよう、テストユーザーの認証情報を設定します。ログイン手順は平易な英語で記述するだけでよく、複雑なスクリプトは必要ありません。

* **ロールを定義する：** 異なるユーザータイプ（例：`Admin`、`Standard User`）ごとに認証情報セットを作成します。これにより、エージェントはロールをまたいだ認可ロジックをテストできます。
* **手順を記述する：** ログインフローを平易な英語で記述します。例：

```
Navigate to /login.
Enter email 'test@example.com' and password 'securepass'.
Click Sign In."
```

* **複数のロール：** 複数のロールを設定して、権限昇格やロール間のアクセスをテストできます。

高度な認証シナリオ（2FA、マジックリンク、OAuth）については、[setting-up-authenticated-testing](https://help.aikidogov.us/docs/docs-ja/pentests/configure-a-pentest/setting-up-authenticated-testing "mention") を参照してください。
{% endstep %}

{% step %}
**コードとドキュメント**

必要に応じて、リポジトリをリンクし、OpenAPI仕様やドキュメントをアップロードしてホワイトボックス分析を有効にできます。ソースコードを提供すると、発見された脆弱性に対する **修正の自動作成** も可能になります。
{% endstep %}

{% step %}
**安全対策**

環境への影響を最小限に抑えるため、リクエストのレート制限と許可されたスキャン時間帯を設定します。

安全制御について詳しくは、[safety-measures.md](https://help.aikidogov.us/docs/docs-ja/pentests/configure-a-pentest/safety-measures "mention") を参照してください。
{% endstep %}

{% step %}
**概要**

すべての設定内容を確認し、プログラムを保存します。保存すると、プログラムはレポートを受け付けられる状態になります。
{% endstep %}
{% endstepper %}
