> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-docs-event-stream-action-templates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# カスタムデータベース接続のセキュリティに関するベストプラクティス

> カスタムデータベース接続のセキュリティに関するベストプラクティスについて説明します。

## カスタムAPIを使ってレガシーIDストレージにアクセスする

APIを実装して、レガシーIDストレージには最小権限を与えることをお勧めします。インターネットを介して一般からアクセスできるようにはしないでください。

レガシーIDストレージを一般のアクセスから保護することは、ベストプラクティスとして推奨されています。たとえば、インターネットに（レガシーID）データベースを公開することは、SQLなどのデータベースインターフェイスが機能性の面で極めて開放的になるため、最小特権の原則（PoLP：Principle of Least Privilege）に違反することになります。

別の方法としては、アクセストークンを使って保護できるように、簡単な（カスタムの）APIを作成して、それぞれのアクションスクリプトが呼び出せるようにします。これは、レガシーIDストアへのインターフェイスとして機能します。そして、スクリプト内からアクセストークンを取得するには、クライアント資格情報付与フローを使うことができます。性能を向上させるために、これはその後`global`オブジェクト内で再利用のためにキャッシュされます。APIは個別の保護されたエンドポイントを提供して、必要なレガシー（ID）管理の機能性（ユーザーの読み取り、パスワードの変更など）だけを専用に処理します。

認証に成功し、適切なオーディエンスが含まれている場合、Auth0はデフォルトで任意のAPIのトークンを提供します。ルールを使ってアクセストークンの割り当てを制限し、レガシーIDストアのAPIへのアクセスを制限すれば、`/authorize`へのリダイレクトが傍受されてAPIにオーディエンスが追加されるなどの不正使用を防止できるだけでなく、さまざまな攻撃ベクトルのシナリオを軽減できます。

<Warning>
  ルールを介したAPIへのアクセスを制限すると、`/authorize`へのリダイレクトが傍受されてAPIにオーディエンスが追加されるといった攻撃ベクトルの件数を減らすことができ、特定のクライアント資格情報を使用したアクセスのみが許可されるようになります。
</Warning>

## レガシーIDストレージにアクセスする

レガシーIDストレージへのアクセスに、カスタムのAPIと提供しているネイティブインターフェイスのどちらを使う場合でも、Auth0テナントに関連付けられているIPアドレスのリストを使って、アクセスを制限することが推奨されます。IPアドレスのリストを確認する方法については、「[AllowList用のAuth0 IPアドレス](/docs/ja-jp/secure/security-guidance/data-security/allowlist)」をお読みください。AllowListにURLを追加すると、レガシーIDストアへのアクセスを制限して、Auth0で定義されているカスタムデータベースのアクションスクリプトのみが許可されるようになります。

<Warning>
  Auth0 IPアドレスAllowListは、1つのリージョンに定義されたすべてのAuth0テナント間で共有されます。許可リストを、レガシーのIDストアへのアクセスを保護するための唯一の方法として使用することは、絶対にしないでください。認可されていないアクセスをユーザーに許してしまい、潜在的なセキュリティの脆弱性を発生させる恐れがあります。
</Warning>

## もっと詳しく

* [セキュリティ保護](/docs/ja-jp/secure)
* [トークンのベストプラクティス](/docs/ja-jp/secure/tokens/token-best-practices)
