Поделиться через


IDataProtectionBuilder Интерфейс

Определение

Предоставляет доступ к конфигурации для системы защиты данных, что позволяет разработчику настраивать алгоритмы шифрования по умолчанию, расположения хранения ключей и механизм защиты неактивных ключей.

public interface class IDataProtectionBuilder
public interface IDataProtectionBuilder
type IDataProtectionBuilder = interface
Public Interface IDataProtectionBuilder

Комментарии

Если разработчик изменяет механизм защиты неактивных ключей, предполагается, что он также изменит расположение хранилища ключей и наоборот. Например, вызов ProtectKeysWithCertificate(IDataProtectionBuilder, String) обычно должен сопровождаться вызовом PersistKeysToFileSystem(IDataProtectionBuilder, DirectoryInfo), иначе во время выполнения могут возникнуть исключения из-за того, что система защиты данных не знает, где хранить ключи.

Аналогичным образом, когда разработчик изменяет алгоритмы шифрования полезных данных, защищенные по умолчанию, он также должен задать явное расположение хранилища ключей. Поэтому вызов UseCryptographicAlgorithms(IDataProtectionBuilder, AuthenticatedEncryptorConfiguration) обычно должен быть связан с вызовом PersistKeysToFileSystem(IDataProtectionBuilder, DirectoryInfo), например .

При изменении алгоритмов шифрования по умолчанию или механизмов защиты неактивных ключей они влияют только на новые ключи в репозитории. Репозиторий может содержать существующие ключи, использующие старые алгоритмы или механизмы защиты.

Свойства

Services

Предоставляет доступ к объекту , IServiceCollection переданного конструктору этого объекта.

Методы расширения

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlobContainer, String)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlockBlob)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudStorageAccount, String)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlobContainer, String)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlockBlob)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudStorageAccount, String)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, Uri)

Настраивает систему защиты данных для сохранения ключей по указанному пути в Хранилище BLOB-объектов Azure.

ProtectKeysWithAzureKeyVault(IDataProtectionBuilder, KeyVaultClient, String)

Настраивает систему защиты данных для защиты ключей с помощью указанного ключа в Azure KeyVault.

ProtectKeysWithAzureKeyVault(IDataProtectionBuilder, String, String, X509Certificate2)

Настраивает систему защиты данных для защиты ключей с помощью указанного ключа в Azure KeyVault.

ProtectKeysWithAzureKeyVault(IDataProtectionBuilder, String, String, String)

Настраивает систему защиты данных для защиты ключей с помощью указанного ключа в Azure KeyVault.

AddKeyEscrowSink(IDataProtectionBuilder, IKeyEscrowSink)

IKeyEscrowSink Регистрирует для выполнения депонирования перед сохранением ключей в хранилище.

AddKeyEscrowSink(IDataProtectionBuilder, Func<IServiceProvider,IKeyEscrowSink>)

IKeyEscrowSink Регистрирует для выполнения депонирования перед сохранением ключей в хранилище.

AddKeyEscrowSink<TImplementation>(IDataProtectionBuilder)

IKeyEscrowSink Регистрирует для выполнения депонирования перед сохранением ключей в хранилище.

AddKeyManagementOptions(IDataProtectionBuilder, Action<KeyManagementOptions>)

Настраивает параметры управления ключами для системы защиты данных.

DisableAutomaticKeyGeneration(IDataProtectionBuilder)

Настраивает систему защиты данных, чтобы не создавать новые ключи автоматически.

PersistKeysToFileSystem(IDataProtectionBuilder, DirectoryInfo)

Настраивает систему защиты данных для сохранения ключей в указанном каталоге. Этот путь может находиться на локальном компьютере или указывать на общую папку UNC.

PersistKeysToRegistry(IDataProtectionBuilder, RegistryKey)

Настраивает систему защиты данных для сохранения ключей в реестре Windows.

ProtectKeysWithCertificate(IDataProtectionBuilder, X509Certificate2)

Настраивает шифрование ключей для заданного сертификата перед сохранением в хранилище.

ProtectKeysWithCertificate(IDataProtectionBuilder, String)

Настраивает шифрование ключей для заданного сертификата перед сохранением в хранилище.

ProtectKeysWithDpapi(IDataProtectionBuilder)

Настраивает шифрование ключей с помощью DPAPI Windows перед сохранением в хранилище. Зашифрованный ключ будет расшифрован только текущей учетной записью пользователя Windows.

ProtectKeysWithDpapi(IDataProtectionBuilder, Boolean)

Настраивает шифрование ключей с помощью DPAPI Windows перед сохранением в хранилище.

ProtectKeysWithDpapiNG(IDataProtectionBuilder)

Настраивает ключи для шифрования с помощью DPAPI Windows CNG перед сохранением в хранилище. Ключи будут расшифрованы текущей учетной записью пользователя Windows.

ProtectKeysWithDpapiNG(IDataProtectionBuilder, String, DpapiNGProtectionDescriptorFlags)

Настраивает ключи для шифрования с помощью DPAPI Windows CNG перед сохранением в хранилище.

SetApplicationName(IDataProtectionBuilder, String)

Задает уникальное имя этого приложения в системе защиты данных.

SetDefaultKeyLifetime(IDataProtectionBuilder, TimeSpan)

Задает время существования ключей по умолчанию, созданных системой защиты данных.

UnprotectKeysWithAnyCertificate(IDataProtectionBuilder, X509Certificate2[])

Настраивает сертификаты, которые можно использовать для расшифровки ключей, загруженных из хранилища.

UseCryptographicAlgorithms(IDataProtectionBuilder, AuthenticatedEncryptionSettings)

Настраивает систему защиты данных для использования указанных алгоритмов шифрования по умолчанию при создании защищенных полезных данных.

UseCryptographicAlgorithms(IDataProtectionBuilder, AuthenticatedEncryptorConfiguration)

Настраивает систему защиты данных для использования указанных алгоритмов шифрования по умолчанию при создании защищенных полезных данных.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngCbcAuthenticatedEncryptionSettings)

Настраивает систему защиты данных для использования пользовательских алгоритмов CNG Windows. Этот API предназначен для сложных сценариев, в которых разработчик не может использовать алгоритмы, указанные в перечислениях EncryptionAlgorithm и ValidationAlgorithm .

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngGcmAuthenticatedEncryptionSettings)

Настраивает систему защиты данных для использования пользовательских алгоритмов CNG Windows. Этот API предназначен для сложных сценариев, в которых разработчик не может использовать алгоритмы, указанные в перечислениях EncryptionAlgorithm и ValidationAlgorithm .

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngCbcAuthenticatedEncryptorConfiguration)

Настраивает систему защиты данных для использования пользовательских алгоритмов CNG Windows. Этот API предназначен для сложных сценариев, в которых разработчик не может использовать алгоритмы, указанные в перечислениях EncryptionAlgorithm и ValidationAlgorithm .

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngGcmAuthenticatedEncryptorConfiguration)

Настраивает систему защиты данных для использования пользовательских алгоритмов CNG Windows. Этот API предназначен для сложных сценариев, в которых разработчик не может использовать алгоритмы, указанные в перечислениях EncryptionAlgorithm и ValidationAlgorithm .

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, ManagedAuthenticatedEncryptorConfiguration)

Настраивает систему защиты данных для использования пользовательских алгоритмов. Этот API предназначен для сложных сценариев, в которых разработчик не может использовать алгоритмы, указанные в перечислениях EncryptionAlgorithm и ValidationAlgorithm .

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, ManagedAuthenticatedEncryptionSettings)

Настраивает систему защиты данных для использования пользовательских алгоритмов. Этот API предназначен для сложных сценариев, в которых разработчик не может использовать алгоритмы, указанные в перечислениях EncryptionAlgorithm и ValidationAlgorithm .

UseEphemeralDataProtectionProvider(IDataProtectionBuilder)

Настраивает систему защиты данных для использования EphemeralDataProtectionProvider для служб защиты данных.

PersistKeysToDbContext<TContext>(IDataProtectionBuilder)

Настраивает систему защиты данных для сохранения ключей в хранилище данных EntityFrameworkCore.

PersistKeysToRedis(IDataProtectionBuilder, IConnectionMultiplexer)

Настраивает систему защиты данных для сохранения ключей в ключе по умолчанию ("DataProtection-Keys") в базе данных Redis.

PersistKeysToRedis(IDataProtectionBuilder, IConnectionMultiplexer, RedisKey)

Настраивает систему защиты данных для сохранения ключей в указанном ключе в базе данных Redis.

PersistKeysToRedis(IDataProtectionBuilder, Func<IDatabase>, RedisKey)

Настраивает систему защиты данных для сохранения ключей для указанного ключа в базе данных Redis.

PersistKeysToStackExchangeRedis(IDataProtectionBuilder, IConnectionMultiplexer)

Настраивает систему защиты данных для сохранения ключей в ключе по умолчанию ("DataProtection-Keys") в базе данных Redis.

PersistKeysToStackExchangeRedis(IDataProtectionBuilder, IConnectionMultiplexer, RedisKey)

Настраивает систему защиты данных для сохранения ключей в указанном ключе в базе данных Redis.

PersistKeysToStackExchangeRedis(IDataProtectionBuilder, Func<IDatabase>, RedisKey)

Настраивает систему защиты данных для сохранения ключей для указанного ключа в базе данных Redis.

Применяется к