KeyContainerPermissionFlags 열거형

정의

주의

Code Access Security is not supported or honored by the runtime.

허용되는 키 컨테이너 액세스의 유형을 지정합니다.

이 열거형은 멤버 값의 비트 조합을 지원합니다.

public enum class KeyContainerPermissionFlags
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum KeyContainerPermissionFlags
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum KeyContainerPermissionFlags
public enum KeyContainerPermissionFlags
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type KeyContainerPermissionFlags = 
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type KeyContainerPermissionFlags = 
type KeyContainerPermissionFlags = 
Public Enum KeyContainerPermissionFlags
상속
KeyContainerPermissionFlags
특성

필드

Name Description
NoFlags 0

키 컨테이너에 액세스할 수 없습니다.

Create 1

키 컨테이너를 만듭니다.

키 컨테이너를 만들면 디스크에 파일도 만들어집니다. 더 이상 사용되지 않을 때 생성되는 모든 키 컨테이너를 제거하는 것이 매우 중요합니다.

Open 2

키 컨테이너를 열고 공개 키를 사용합니다.

Open 에서는 프라이빗 키를 사용하여 파일에 서명하거나 암호를 해독할 수 있는 권한을 부여하지 않지만 사용자가 파일 서명을 확인하고 파일을 암호화할 수 있습니다. 키 소유자만 프라이빗 키를 사용하여 이러한 파일의 암호를 해독할 수 있습니다.

Delete 4

키 컨테이너를 삭제합니다.

키 컨테이너를 삭제하면 키로 암호화되거나 서명된 파일을 사용할 수 없으므로 서비스 거부 공격이 될 수 있습니다. 따라서 삭제는 권한 있는 작업입니다.

Import 16

키를 키 컨테이너로 가져옵니다.

키를 명명된 키 컨테이너로 가져오는 것이 기존 키를 대체하므로 키를 가져오는 기능은 컨테이너를 삭제하는 기능만큼 해로울 수 있습니다.

Export 32

키 컨테이너에서 키를 내보냅니다.

키를 내보내는 기능은 키의 독점성을 제거하기 때문에 잠재적으로 해로울 수 있습니다.

Sign 256

키를 사용하여 파일에 서명합니다.

사용자가 다른 사용자의 키를 사용하여 파일에 서명할 수 있으므로 파일에 서명하는 기능은 잠재적으로 해로울 수 있습니다.

Decrypt 512

키 컨테이너의 암호를 해독합니다.

암호 해독은 프라이빗 키를 사용하기 때문에 권한 있는 작업입니다.

ViewAcl 4096

키 컨테이너에 대한 ACL(액세스 제어 목록)을 봅니다.

ChangeAcl 8192

키 컨테이너의 ACL(액세스 제어 목록)을 변경합니다.

AllFlags 13111

키 컨테이너 만들기, 암호 해독, 삭제 및 열기 키 내보내기 및 가져오기 키를 사용하여 파일에 서명합니다. 키 컨테이너에 대한 액세스 제어 목록을 보고 변경합니다.

설명

Caution

CAS(코드 액세스 보안)는 모든 버전의 .NET Framework 및 .NET에서 더 이상 사용되지 않습니다. 최신 버전의 .NET은 CAS 주석을 준수하지 않으며 CAS 관련 API를 사용하는 경우 오류가 발생합니다. 개발자는 보안 작업을 수행하는 다른 방법을 찾아야 합니다.

이 열거형은 클래스의 멤버에 KeyContainerPermissionAccessEntry 의해 사용됩니다.

Caution

이러한 플래그의 대부분은 강력한 효과를 가질 수 있으며 신뢰할 수 있는 코드에만 부여되어야 합니다.

가장 강력한 플래그는 Create, Delete,ImportExport, SignDecryptAllFlags. 이러한 플래그의 사용이 표시할 수 있는 특정 위협은 멤버 설명을 참조하세요.

적용 대상