Asp.net core ProtectKeysWithAzureKeyVault是在keyvault中创建密钥,还是我需要事先创建密钥?

Asp.net core ProtectKeysWithAzureKeyVault是在keyvault中创建密钥,还是我需要事先创建密钥?,asp.net-core,azure-keyvault,Asp.net Core,Azure Keyvault,文档中未指定密钥标识符指定的密钥是由ProtectKeysWithAzureKeyVault方法创建的,还是必须在keyvault中手动创建。如果需要手动创建密钥,应使用该密钥的哪些设置?如果它自动创建密钥,它什么时候创建,抛出什么异常,因为即使我提供了错误的clientId并将其保密,它也会默默地失败 services.AddDataProtection() .PersistKeysToFileSystem(new DirectoryInfo("x

文档中未指定密钥标识符指定的密钥是由ProtectKeysWithAzureKeyVault方法创建的,还是必须在keyvault中手动创建。如果需要手动创建密钥,应使用该密钥的哪些设置?如果它自动创建密钥,它什么时候创建,抛出什么异常,因为即使我提供了错误的clientId并将其保密,它也会默默地失败

  services.AddDataProtection()
                .PersistKeysToFileSystem(new DirectoryInfo("xxx"))
                .ProtectKeysWithAzureKeyVault(
                     keyIdentifier: "xxx",
                     clientId: "xxx",
                     clientSecret: "xxx");

您必须提前在Azure key Vault中创建密钥,因为您应该将完整URL传递到ProtectKeysWithAzureKeyVault

我通常使用以下设置创建密钥:

此外,当您链接到密钥时,请忽略版本号,然后您将指向密钥的最新版本: