Azure Key Vault Key Encryptor for Microsoft.AspNetCore.DataProtection

パッケージをAzure.Extensions.AspNetCore.DataProtection.Keys使用すると、Azure Key Vault キー暗号化/ラッピング機能を使用して保存時のキーを保護できます。

作業の開始

パッケージをインストールする

NuGet を使用してパッケージをインストールします。

dotnet add package Azure.Extensions.AspNetCore.DataProtection.Keys

前提条件

このパッケージを使用するには、Azure サブスクリプションKey Vault、およびキーが必要です。

新しいKey Vaultを作成するには、Azure PortalAzure PowerShell、または Azure CLI を使用できます。 Azure CLI を使う例を次に示します。

az keyvault create --name MyVault --resource-group MyResourceGroup --location westus
az keyvault key create --name MyKey --vault-name MyVault

# give write access to a service principal (application)
az keyvault set-policy -n MyVault --object-id <application_id> --key-permissions get unwrapKey wrapKey

主要な概念

スレッド セーフ

すべてのクライアント インスタンス メソッドがスレッド セーフであり、相互に独立していることを保証します (ガイドライン)。 これにより、スレッド間であっても、クライアント インスタンスの再利用に関する推奨事項が常に安全になります。

その他の概念

クライアント オプション | 応答 | へのアクセス実行時間の長い操作 | エラーの | 処理診断 | あざける | クライアントの有効期間

Azure Key Vault キーを使用してキーを保護するには、サービスを構成するときに を使用ProtectKeysWithAzureKeyVaultしてシステムを構成します。

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddDataProtection()
        .ProtectKeysWithAzureKeyVault(new Uri("<Key-ID>"), new DefaultAzureCredential());
}

Azure Identity ライブラリでは、認証に対する Azure Active Directory のサポートが簡単に提供されます。

次の手順

DataProtection の詳細については、「ASP.NET Core」を参照してください。

共同作成

このプロジェクトでは、共同作成と提案を歓迎しています。 ほとんどの共同作成では、共同作成者使用許諾契約書 (CLA) にご同意いただき、ご自身の共同作成内容を使用する権利を Microsoft に供与する権利をお持ちであり、かつ実際に供与することを宣言していただく必要があります。 詳細については、「 cla.microsoft.com」を参照してください。

このプロジェクトでは、Microsoft オープン ソースの倫理規定を採用しています。 詳しくは、「Code of Conduct FAQ (倫理規定についてよくある質問)」を参照するか、opencode@microsoft.com 宛てに質問またはコメントをお送りください。

インプレッション数