다음을 통해 공유


보안 및 레지스트리(Visual Basic)

이 페이지에서는 레지스트리에 데이터를 저장하는 보안에 미치는 영향에 대해 설명합니다.

권한

레지스트리 키가 ACL(액세스 제어 목록)으로 보호되더라도 암호와 같은 비밀을 레지스트리에 일반 텍스트로 저장하는 것은 안전하지 않습니다.

레지스트리를 사용하면 시스템 리소스 또는 보호된 정보에 부적절한 액세스를 허용하여 보안을 손상시킬 수 있습니다. 이러한 속성을 사용하려면 레지스트리 변수에 대한 액세스를 제어하는 열거형의 RegistryPermissionAccess 읽기 및 쓰기 권한이 있어야 합니다. 완전 신뢰로 실행되는 모든 코드(기본 보안 정책에 따라 사용자의 로컬 하드 디스크에 설치된 모든 코드)에는 레지스트리에 액세스하는 데 필요한 권한이 있습니다. 자세한 내용은 클래스를 참조 RegistryPermission 하세요.

레지스트리 변수는 코드 없이 RegistryPermission 액세스할 수 있는 메모리 위치에 저장해서는 안 됩니다. 마찬가지로 권한을 부여할 때 작업을 완료하는 데 필요한 최소 권한을 부여합니다.

레지스트리 권한 액세스 값은 열거형에 RegistryPermissionAccess 의해 정의됩니다. 다음 표에서는 해당 멤버에 대해 자세히 설명합니다.

가치 레지스트리 변수에 대한 액세스
AllAccess 만들기, 읽기 및 쓰기
Create 창조하다
NoAccess 액세스 권한 없음
Read 읽다
Write 작성하다

레지스트리 키에서 값 확인

레지스트리 값을 만들 때 해당 값이 이미 있는 경우 수행할 작업을 결정해야 합니다. 악의적인 프로세스인 다른 프로세스는 이미 값을 만들고 액세스 권한이 있을 수 있습니다. 레지스트리 값에 데이터를 넣으면 다른 프로세스에서 데이터를 사용할 수 있습니다. 이를 방지하려면 메서드를 GetValue 사용합니다. 키가 아직 없는 경우 반환 Nothing 됩니다.

중요합니다

웹 애플리케이션에서 레지스트리를 읽을 때 현재 사용자의 ID는 웹 애플리케이션에서 구현된 인증 및 가장에 따라 달라집니다.

참고하십시오