다음을 통해 공유


SecurityAction 열거형

정의

주의

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

선언적 보안을 사용하여 수행할 수 있는 보안 작업을 지정합니다.

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

필드

Name Description
Demand 2

호출 스택에서 더 높은 모든 호출자에게는 현재 사용 권한 개체에 지정된 사용 권한이 부여되어야 합니다.

Assert 3

호출 코드는 스택의 상위 호출자에게 리소스에 액세스할 수 있는 권한이 부여되지 않은 경우에도 현재 권한 개체로 식별된 리소스에 액세스할 수 있습니다( Assert 메서드 사용 참조).

Deny 4

현재 권한 개체에 의해 지정된 리소스에 액세스하는 기능은 호출자에게 액세스 권한이 부여된 경우에도 거부됩니다.

PermitOnly 5

코드에 다른 리소스에 액세스할 수 있는 권한이 부여된 경우에도 이 권한 개체에 지정된 리소스에만 액세스할 수 있습니다.

LinkDemand 6

직접 호출자에게 지정된 권한을 부여해야 합니다. .NET Framework 4에서는 사용하지 마세요. 완전 신뢰의 경우 대신 사용 SecurityCriticalAttribute 하세요. 부분 신뢰의 경우 .를 사용합니다 Demand.

InheritanceDemand 7

지정된 사용 권한을 부여하려면 클래스를 상속하거나 메서드를 재정의하는 파생 클래스가 필요합니다.

RequestMinimum 8

코드를 실행하는 데 필요한 최소 권한에 대한 요청입니다. 이 작업은 어셈블리 범위 내에서만 사용할 수 있습니다.

RequestOptional 9

선택 사항인 추가 권한에 대한 요청입니다(실행할 필요가 없음). 이 요청은 특별히 요청되지 않은 다른 모든 권한을 암시적으로 거부합니다. 이 작업은 어셈블리 범위 내에서만 사용할 수 있습니다.

RequestRefuse 10

오용될 수 있는 권한 요청은 호출 코드에 부여되지 않습니다. 이 작업은 어셈블리 범위 내에서만 사용할 수 있습니다.

설명

주의

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

다음 표에서는 각 보안 작업이 수행되는 시간과 지원하는 대상에 대해 설명합니다.

Important

.NET Framework 4에서는 거부, RequestMinimum, RequestOptional 및 RequestRefuse 권한 요청을 적용하기 위한 런타임 지원이 제거되었습니다. 이러한 요청은 .NET Framework 4 이상을 기반으로 하는 코드에서 사용해서는 안 됩니다. 이 변경 내용 및 기타 변경 내용에 대한 자세한 내용은 보안 변경 내용을 참조하세요.

.NET Framework 4에서는 사용하지 LinkDemand 않아야 합니다. 대신 사용 SecurityCriticalAttribute 량을 완전히 신뢰할 수 있는 애플리케이션으로 제한하거나 부분적으로 신뢰할 수 있는 호출자를 제한하는 데 사용합니다 Demand .

보안 작업 선언 작업 시간 지원되는 대상
LinkDemand (.NET Framework 4 이상에서는 사용하지 마세요.) Just-In-Time 컴파일 클래스, 메서드
InheritanceDemand 로드 시간 클래스, 메서드
Demand 실행 시간 클래스, 메서드
Assert 실행 시간 클래스, 메서드
Deny (.NET Framework 4에서는 사용되지 않음) 실행 시간 클래스, 메서드
PermitOnly 실행 시간 클래스, 메서드
RequestMinimum (.NET Framework 4에서는 사용되지 않음) 권한 부여 시간 집회
RequestOptional (.NET Framework 4에서는 사용되지 않음) 권한 부여 시간 집회
RequestRefuse (.NET Framework 4에서는 사용되지 않음) 권한 부여 시간 집회

특성 대상에 대한 자세한 내용은 다음을 참조하세요 Attribute.

적용 대상