IDataProtectionBuilder 인터페이스

정의

개발자가 기본 암호화 알고리즘, 키 스토리지 위치 및 미사용 키를 보호하는 메커니즘을 구성할 수 있는 데이터 보호 시스템에 대한 구성에 대한 액세스를 제공합니다.

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

설명

개발자가 미사용 키 보호 메커니즘을 변경하는 경우 키 스토리지 위치도 변경하고 그 반대의 경우도 마찬가지입니다. instance 경우 에 대한 ProtectKeysWithCertificate(IDataProtectionBuilder, String) 호출은 일반적으로 에 대한 호출PersistKeysToFileSystem(IDataProtectionBuilder, DirectoryInfo)과 함께 수행되어야 합니다. 또는 데이터 보호 시스템이 키를 유지할 위치를 모르기 때문에 런타임에 예외가 발생할 수 있습니다.

마찬가지로 개발자가 보호되는 기본 페이로드 암호화 알고리즘을 수정할 때 명시적 키 스토리지 위치도 설정해야 합니다. 따라서 에 대한 UseCryptographicAlgorithms(IDataProtectionBuilder, AuthenticatedEncryptorConfiguration) 호출은 일반적으로 에 대한 호출 PersistKeysToFileSystem(IDataProtectionBuilder, DirectoryInfo)과 페어링되어야 합니다. 예를 들면 입니다.

기본 암호화 알고리즘 또는 미사용 키 보호 메커니즘이 변경되면 리포지토리의 키에만 영향을 줍니다. 리포지토리에는 이전 알고리즘 또는 보호 메커니즘을 사용하는 기존 키가 포함될 수 있습니다.

속성

Services

이 개체의 IServiceCollection 생성자에 전달된 에 대한 액세스를 제공합니다.

확장 메서드

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlobContainer, String)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlockBlob)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudStorageAccount, String)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlobContainer, String)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudBlockBlob)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, CloudStorageAccount, String)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToAzureBlobStorage(IDataProtectionBuilder, Uri)

Azure Blob Storage 지정된 경로에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

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)

스토리지에 유지되기 전에 Windows DPAPI로 암호화할 키를 구성합니다. 암호화된 키는 현재 Windows 사용자 계정으로만 암호 해독할 수 있습니다.

ProtectKeysWithDpapi(IDataProtectionBuilder, Boolean)

스토리지에 유지되기 전에 Windows DPAPI로 암호화할 키를 구성합니다.

ProtectKeysWithDpapiNG(IDataProtectionBuilder)

스토리지에 유지되기 전에 Windows CNG DPAPI를 사용하여 암호화할 키를 구성합니다. 키는 현재 Windows 사용자 계정으로 해독할 수 있습니다.

ProtectKeysWithDpapiNG(IDataProtectionBuilder, String, DpapiNGProtectionDescriptorFlags)

스토리지에 유지되기 전에 Windows CNG DPAPI를 사용하여 암호화할 키를 구성합니다.

SetApplicationName(IDataProtectionBuilder, String)

데이터 보호 시스템 내에서 이 애플리케이션의 고유한 이름을 설정합니다.

SetDefaultKeyLifetime(IDataProtectionBuilder, TimeSpan)

데이터 보호 시스템에서 만든 키의 기본 수명을 설정합니다.

UnprotectKeysWithAnyCertificate(IDataProtectionBuilder, X509Certificate2[])

스토리지에서 로드된 키의 암호를 해독하는 데 사용할 수 있는 인증서를 구성합니다.

UseCryptographicAlgorithms(IDataProtectionBuilder, AuthenticatedEncryptionSettings)

보호된 페이로드를 생성할 때 기본적으로 지정된 암호화 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다.

UseCryptographicAlgorithms(IDataProtectionBuilder, AuthenticatedEncryptorConfiguration)

보호된 페이로드를 생성할 때 기본적으로 지정된 암호화 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngCbcAuthenticatedEncryptionSettings)

사용자 지정 Windows CNG 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다. 이 API는 개발자가 및 ValidationAlgorithm 열거형에 지정된 알고리즘을 사용할 수 없는 고급 시나리오를 EncryptionAlgorithm 위한 것입니다.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngGcmAuthenticatedEncryptionSettings)

사용자 지정 Windows CNG 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다. 이 API는 개발자가 및 ValidationAlgorithm 열거형에 지정된 알고리즘을 사용할 수 없는 고급 시나리오를 EncryptionAlgorithm 위한 것입니다.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngCbcAuthenticatedEncryptorConfiguration)

사용자 지정 Windows CNG 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다. 이 API는 개발자가 및 ValidationAlgorithm 열거형에 지정된 알고리즘을 사용할 수 없는 고급 시나리오를 EncryptionAlgorithm 위한 것입니다.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, CngGcmAuthenticatedEncryptorConfiguration)

사용자 지정 Windows CNG 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다. 이 API는 개발자가 및 ValidationAlgorithm 열거형에 지정된 알고리즘을 사용할 수 없는 고급 시나리오를 EncryptionAlgorithm 위한 것입니다.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, ManagedAuthenticatedEncryptorConfiguration)

사용자 지정 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다. 이 API는 개발자가 및 ValidationAlgorithm 열거형에 지정된 알고리즘을 사용할 수 없는 고급 시나리오를 EncryptionAlgorithm 위한 것입니다.

UseCustomCryptographicAlgorithms(IDataProtectionBuilder, ManagedAuthenticatedEncryptionSettings)

사용자 지정 알고리즘을 사용하도록 데이터 보호 시스템을 구성합니다. 이 API는 개발자가 및 ValidationAlgorithm 열거형에 지정된 알고리즘을 사용할 수 없는 고급 시나리오를 EncryptionAlgorithm 위한 것입니다.

UseEphemeralDataProtectionProvider(IDataProtectionBuilder)

데이터 보호 서비스에 를 사용하도록 EphemeralDataProtectionProvider 데이터 보호 시스템을 구성합니다.

PersistKeysToDbContext<TContext>(IDataProtectionBuilder)

EntityFrameworkCore 데이터 저장소에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToRedis(IDataProtectionBuilder, IConnectionMultiplexer)

Redis 데이터베이스에서 기본 키('DataProtection-Keys')에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToRedis(IDataProtectionBuilder, IConnectionMultiplexer, RedisKey)

Redis 데이터베이스에서 지정된 키에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToRedis(IDataProtectionBuilder, Func<IDatabase>, RedisKey)

Redis 데이터베이스에서 지정된 키에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToStackExchangeRedis(IDataProtectionBuilder, IConnectionMultiplexer)

Redis 데이터베이스에서 기본 키('DataProtection-Keys')에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToStackExchangeRedis(IDataProtectionBuilder, IConnectionMultiplexer, RedisKey)

Redis 데이터베이스에서 지정된 키에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

PersistKeysToStackExchangeRedis(IDataProtectionBuilder, Func<IDatabase>, RedisKey)

Redis 데이터베이스에서 지정된 키에 키를 유지하도록 데이터 보호 시스템을 구성합니다.

적용 대상