다음을 통해 공유


IStackWalk 인터페이스

정의

주의

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

호출 스택의 모든 호출자가 보호된 리소스에 액세스하는 데 필요한 권한이 있는지 여부를 결정하는 스택 워크를 관리합니다.

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

설명

주의

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

부분적으로 신뢰할 수 있는 코드에는 항상 보안 위험을 보여 줍니다. 이 리소스에 액세스 권한이 있는 악의적인 코드를 대신 하 여 작업을 수행할 경우에 따라 조작할 수 있습니다. 이러한 방식으로 악성 코드를 허용 하는 보다 더 높은 보안 액세스를 얻을 수 있습니다.

공용 언어 런타임에 대 한 모든 호출에서 스택 워크를 실행 하 여 이러한 공격 으로부터 관리 되는 코드를 보호할 수 있습니다. 스택 워크는 호출 스택의 모든 코드 보호 된 리소스에 액세스할 수 있는 권한이 필요 합니다. 공격을 시도 하는 코드는 호출 스택의 어딘가에 있을 항상, 때문에 자체 보안 권한을 초과 없게 됩니다 것입니다.

메서드

Assert()

스택의 상위 호출자에게 리소스에 액세스할 수 있는 권한이 부여되지 않더라도 호출 코드에서 현재 사용 권한 개체로 식별되는 리소스에 액세스할 수 있음을 어설션합니다.

Demand()

호출 스택의 모든 호출자에게 현재 사용 권한 개체가 지정한 사용 권한이 부여되어 있는지를 런타임에 확인합니다.

Deny()

호출 코드를 통과하는 현재 개체에 대한 모든 Demand()가 실패합니다.

PermitOnly()

호출 스택의 상위 코드에 다른 리소스에 대한 액세스 권한이 부여된 경우에도, 호출 코드를 통과하는 현재 개체를 제외하고 모든 개체에 대한 모든 Demand()가 실패하는 원인이 됩니다.

적용 대상