> 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/sonono/private-registries/jfrog-artifactory.md).

# JFrog Artifactory

JFrog Artifactory を仲介として設定し、Aikido のレジストリプロキシを通してレジストリトラフィックをルーティングします。Artifactory は公開レジストリではなく Aikido からパッケージを取得するため、チームがインストールするすべてのパッケージがマルウェア、年齢制限、および既知の脆弱性についてチェックされます。

{% stepper %}
{% step %}

### Aikido のプロキシ URL を取得する

次へ移動 [設定 > レジストリプロキシ](https://app.aikido.dev/issues/fix/extended-lifecycle-support/setup-instructions)を選択し、対象のエコシステムを選んで上流プロキシ URL をコピーします

<figure><img src="/files/5d6549f477bbae991fd832fa32087095797656d5" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Artifactory でリモートリポジトリを作成する

1. Artifactory で、 **管理 > リポジトリ**.
2. をクリック **新規リポジトリ** を選択します **リモート**.
3. 設定する **パッケージタイプ**
4. たとえば、リポジトリにキーを付けます `aikido`.
5. 次を設定します **URL** フィールドに、ステップ 1 で取得した Aikido プロキシの URL を入力します。
6. リポジトリを保存します。

{% hint style="info" %}
パッケージに Aikido の最新データが反映されない場合は、 **メタデータキャッシュの有効期間** を `0` をリモートリポジトリの設定で変更してください。これにより、Artifactory はキャッシュされたバージョンを返すのではなく、常に Aikido プロキシから最新のメタデータを取得するようになります。
{% endhint %}
{% endstep %}

{% step %}

### （任意）仮想リポジトリを作成する

ローカルの Artifactory リポジトリに内部パッケージも保存している場合は、両方を集約する仮想リポジトリを作成します。

1. 次へ移動 **管理 > リポジトリ > 新規リポジトリ > 仮想**.
2. 設定する **パッケージタイプ** をリモートリポジトリに合わせる
3. ローカルリポジトリとリモートリポジトリをメンバーとして追加します。
4. 代わりに、パッケージマネージャーを仮想リポジトリの URL に向けます。

これにより、Aikido を通じて内部パッケージと外部プロキシパッケージの両方を提供する、チーム向けの単一のレジストリエンドポイントを用意できます。
{% endstep %}

{% step %}

### 開発者マシンを Artifactory を使用するように設定する

各開発者のパッケージマネージャーを Artifactory リポジトリに向けます。正確な手順については JFrog のドキュメントを参照してください。

{% tabs %}
{% tab title="npm" %}
[npm リポジトリ - クライアントを接続する](https://docs.jfrog.com/artifactory/docs/npm-repositories#connect-your-npm-client-to-artifactory)
{% endtab %}

{% tab title="PyPI" %}
[PyPI リポジトリ - クライアントを接続する](https://docs.jfrog.com/artifactory/docs/pypi-repositories#connect-your-pypi-client-to-artifactory)
{% endtab %}

{% tab title="Maven" %}
[Maven リポジトリ - クライアントを接続する](https://docs.jfrog.com/artifactory/docs/maven-repositories#connect-your-maven-client-to-artifactory)
{% endtab %}

{% tab title="NuGet" %}
[NuGet リポジトリ - クライアントを接続する](https://docs.jfrog.com/artifactory/docs/nuget-repositories#connect-your-nuget-client-to-artifactory)
{% endtab %}
{% endtabs %}
{% endstep %}

{% step %}

### （任意）Device Protection で公開レジストリをブロックする

Artifactory を導入しても、開発者はパッケージマネージャーを公開レジストリに直接向けることで引き続き回避できます。すべてのトラフィックがプライベートレジストリを通るように強制するには、Aikido Device Protection を導入してください。

{% content-ref url="/pages/7fa47c5a1ee5b3c664f0ab37ca9a23372513ddeb" %}
[公開パッケージレジストリをブロック](/docs/docs-ja/aikido-debaisu/using-aikido-endpoint/block-public-package-registries.md)
{% endcontent-ref %}
{% endstep %}
{% endstepper %}


---

# 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/sonono/private-registries/jfrog-artifactory.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.
