開発者にとって一般的な課題は、サービス間の通信をセキュリティで保護するために使用されるシークレット、資格情報、証明書、およびキーの管理です。 マネージド ID を使用すると、開発者はこれらの資格情報を管理する必要がなくなります。
開発者はシークレットを Azure Key Vault に安全に格納できますが、サービスには Azure Key Vault にアクセスする方法が必要です。 マネージド ID は、Microsoft Entra 認証をサポートするリソースに接続するときにアプリケーションが使用するために、Microsoft Entra ID で自動的にマネージド ID を提供します。 アプリケーションでは、マネージド ID を使用して、資格情報を管理することなく Microsoft Entra トークンを取得できます。
マネージド ID を使用する利点の一部を次に示します。
- 資格情報を管理する必要はありません。 資格情報にはアクセスできません。
 - マネージド ID を使用して、独自のアプリケーションを含む Microsoft Entra 認証をサポートするすべてのリソースに対する認証を行うことができます。
 - マネージド ID は、追加料金なしで使用できます。
 
Azure で使用できるマネージド ID の種類
マネージド ID には、次の 2 種類があります。
システム割り当て: Azure Database for PostgreSQL などの一部の Azure リソースの種類では、リソースでマネージド ID を直接有効にすることができます。 システム割り当てマネージド ID と呼ばれます。 システム割り当てマネージド ID を有効にする場合:
特殊な種類のサービス プリンシパルは、ID の Microsoft Entra ID に作成されます。 サービス プリンシパルは、その Azure リソースのライフサイクルに関連付けられています。 Azure リソースが削除されると、サービス プリンシパルが自動的に削除されます。
設計上、この ID を使用して Microsoft Entra ID からトークンを要求できるのは、その Azure リソースだけです。
マネージド ID に関連付けられているサービス プリンシパルが 1 つ以上のサービスにアクセスできることを承認できます。
マネージド ID に関連付けられているサービス プリンシパルに割り当てられる名前は、作成される Azure リソースの名前と常に同じです。
ユーザー割り当て: 一部の Azure リソースの種類では、ユーザーが独立したリソースとして作成したマネージド ID の割り当てもサポートされています。 これらの ID のライフサイクルは、割り当てられているリソースのライフサイクルとは無関係です。 複数のリソースに割り当てることができます。 ユーザー割り当てマネージド ID を有効にする場合:
特殊な種類のサービス プリンシパルは、ID の Microsoft Entra ID に作成されます。 サービス プリンシパルは、サービス プリンシパルを使用するリソースとは別に管理されます。
複数のリソースで、ユーザー割り当て ID を利用できます。
マネージド ID が 1 つ以上のサービスにアクセスすることを承認します。
Azure Database for PostgreSQL でのマネージド ID の使用
Azure Database for PostgreSQL のシステム割り当てマネージド ID は、次の方法で使用されます。
- 
              拡張機能azure_storage、 
managed-identity認証の種類を使用してストレージ アカウントにアクセスするように構成されている場合。 詳細については、 Microsoft Entra ID で承認を使用するようにazure_storage拡張機能を構成する方法を参照してください。 - Azure Database for PostgreSQL (プレビュー) の Microsoft Fabric ミラー化されたデータベース は、システム割り当てマネージド ID の資格情報を使用して、フレキシブル サーバーのインスタンスが Microsoft Fabric の Azure DataLake サービスに送信する要求に署名し、指定されたデータベースをミラー化します。
 
Azure Database for PostgreSQL フレキシブル サーバー インスタンス用に構成されたユーザー割り当てマネージド ID は、次の目的で使用できます。