IsolatedStorageContainment 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
주의
Code Access Security is not supported or honored by the runtime.
격리된 스토리지의 허용된 사용을 지정합니다.
public enum class IsolatedStorageContainment
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum IsolatedStorageContainment
[System.Serializable]
public enum IsolatedStorageContainment
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum IsolatedStorageContainment
public enum IsolatedStorageContainment
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type IsolatedStorageContainment =
[<System.Serializable>]
type IsolatedStorageContainment =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type IsolatedStorageContainment =
type IsolatedStorageContainment =
Public Enum IsolatedStorageContainment
- 상속
- 특성
필드
| Name | 값 | Description |
|---|---|---|
| None | 0 | 격리된 스토리지의 사용은 허용되지 않습니다. |
| DomainIsolationByUser | 16 | 스토리지는 먼저 사용자에 의해 격리된 다음 도메인 및 어셈블리별로 격리됩니다. 스토리지는 컴퓨터에 의해 격리됩니다. 데이터는 동일한 애플리케이션의 컨텍스트 내에서만 액세스할 수 있으며 동일한 사용자가 실행하는 경우에만 액세스할 수 있습니다. 이는 타사 어셈블리가 프라이빗 데이터 저장소를 유지하려는 경우에 유용합니다. |
| ApplicationIsolationByUser | 21 | 스토리지는 먼저 사용자에 의해 격리된 다음 애플리케이션에 의해 격리됩니다. 스토리지는 컴퓨터에 의해 격리됩니다. 이렇게 하면 모든 도메인 컨텍스트에서 액세스할 수 있는 애플리케이션에 대한 데이터 저장소가 제공됩니다. 애플리케이션별 데이터 구획은 특정 웹 사이트에서 애플리케이션의 데이터 격리를 손상시킬 수 있는 애플리케이션 간의 "터널"을 잠재적으로 제공하기 때문에 추가 신뢰가 필요합니다. |
| AssemblyIsolationByUser | 32 | 스토리지는 먼저 사용자에 의해 격리된 다음 코드 어셈블리에 의해 격리됩니다. 스토리지는 컴퓨터에 의해 격리됩니다. 이렇게 하면 모든 도메인 컨텍스트에서 액세스할 수 있는 어셈블리에 대한 데이터 저장소가 제공됩니다. 어셈블리별 데이터 구획은 특정 웹 사이트에서 애플리케이션의 데이터 격리를 손상시킬 수 있는 애플리케이션 간의 "터널"을 잠재적으로 제공하기 때문에 추가 신뢰가 필요합니다. |
| DomainIsolationByMachine | 48 | 스토리지는 먼저 컴퓨터와 도메인 및 어셈블리별로 격리됩니다. 데이터는 동일한 애플리케이션의 컨텍스트 내에서만 액세스할 수 있으며 동일한 컴퓨터에서 실행되는 경우에만 액세스할 수 있습니다. 이는 타사 어셈블리가 프라이빗 데이터 저장소를 유지하려는 경우에 유용합니다. |
| AssemblyIsolationByMachine | 64 | 스토리지는 먼저 컴퓨터로 격리된 다음 코드 어셈블리에 의해 격리됩니다. 이렇게 하면 모든 도메인 컨텍스트에서 액세스할 수 있는 어셈블리에 대한 데이터 저장소가 제공됩니다. 어셈블리별 데이터 구획은 특정 웹 사이트에서 애플리케이션의 데이터 격리를 손상시킬 수 있는 애플리케이션 간의 "터널"을 잠재적으로 제공하기 때문에 추가 신뢰가 필요합니다. |
| ApplicationIsolationByMachine | 69 | 스토리지는 먼저 컴퓨터와 애플리케이션에 의해 격리됩니다. 이렇게 하면 모든 도메인 컨텍스트에서 액세스할 수 있는 애플리케이션에 대한 데이터 저장소가 제공됩니다. 애플리케이션별 데이터 구획은 특정 웹 사이트에서 애플리케이션의 데이터 격리를 손상시킬 수 있는 애플리케이션 간의 "터널"을 잠재적으로 제공하기 때문에 추가 신뢰가 필요합니다. |
| DomainIsolationByRoamingUser | 80 | 스토리지는 먼저 사용자에 의해 격리된 다음 도메인 및 어셈블리별로 격리됩니다. Windows 사용자 데이터 로밍을 사용하도록 설정하면 스토리지가 로밍됩니다. 데이터는 동일한 애플리케이션의 컨텍스트 내에서만 액세스할 수 있으며 동일한 사용자가 실행하는 경우에만 액세스할 수 있습니다. 이는 타사 어셈블리가 프라이빗 데이터 저장소를 유지하려는 경우에 유용합니다. |
| AssemblyIsolationByRoamingUser | 96 | 스토리지는 먼저 사용자에 의해 격리된 다음 어셈블리 증명 정보로 격리됩니다. Windows 사용자 데이터 로밍을 사용하도록 설정하면 스토리지가 로밍됩니다. 이렇게 하면 모든 도메인 컨텍스트에서 액세스할 수 있는 어셈블리에 대한 데이터 저장소가 제공됩니다. 어셈블리별 데이터 구획은 특정 웹 사이트에서 애플리케이션의 데이터 격리를 손상시킬 수 있는 애플리케이션 간의 "터널"을 잠재적으로 제공하기 때문에 추가 신뢰가 필요합니다. |
| ApplicationIsolationByRoamingUser | 101 | 스토리지는 먼저 사용자에 의해 격리된 다음 애플리케이션 증명 정보로 격리됩니다. Windows 사용자 데이터 로밍을 사용하도록 설정하면 스토리지가 로밍됩니다. 이렇게 하면 모든 도메인 컨텍스트에서 액세스할 수 있는 애플리케이션에 대한 데이터 저장소가 제공됩니다. 애플리케이션별 데이터 구획은 특정 웹 사이트에서 애플리케이션의 데이터 격리를 손상시킬 수 있는 애플리케이션 간의 "터널"을 잠재적으로 제공하기 때문에 추가 신뢰가 필요합니다. |
| AdministerIsolatedStorageByUser | 112 | 사용자 저장소에 대한 무제한 관리 기능입니다. 전체 사용자 저장소의 검색 및 삭제를 허용하지만 사용자 고유의 도메인/어셈블리 ID 이외의 읽기 권한은 허용하지 않습니다. |
| UnrestrictedIsolatedStorage | 240 | 격리된 스토리지의 사용은 제한 없이 허용됩니다. 코드는 도메인 또는 어셈블리의 ID에 관계없이 사용자 저장소의 모든 부분에 대한 모든 권한을 줍니다. 격리된 스토리지의 이러한 사용에는 격리된 스토리지 데이터 저장소의 콘텐츠를 열거하는 기능이 포함됩니다. |
설명
Caution
CAS(코드 액세스 보안)는 모든 버전의 .NET Framework 및 .NET에서 더 이상 사용되지 않습니다. 최신 버전의 .NET은 CAS 주석을 준수하지 않으며 CAS 관련 API를 사용하는 경우 오류가 발생합니다. 개발자는 보안 작업을 수행하는 다른 방법을 찾아야 합니다.
격리된 스토리지는 증거를 사용하여 애플리케이션 또는 구성 요소에서 사용할 고유한 스토리지 영역을 결정합니다. 어셈블리의 ID는 해당 어셈블리에서 사용할 가상 파일 시스템의 루트를 고유하게 결정합니다. 따라서 파일 시스템 또는 레지스트리와 같은 공통 리소스를 공유하는 많은 애플리케이션 및 구성 요소 대신 각각에는 고유한 파일 영역이 기본적으로 할당됩니다.
격리된 스토리지를 할당할 때 네 가지 기본 격리 범위가 사용됩니다.
User- 코드는 항상 현재 사용자에 따라 범위가 지정됩니다. 동일한 어셈블리는 다른 사용자가 실행할 때 다른 저장소를 받습니다.Machine- 코드는 항상 컴퓨터에 따라 범위가 지정됩니다. 동일한 컴퓨터에서 다른 사용자가 실행할 때 동일한 어셈블리가 동일한 저장소를 받습니다.Assembly- 코드는 강력한 이름(예: Microsoft)으로 암호화적으로 식별됩니다. Office.* 또는 Microsoft. 사무실. Word), 게시자별(공개 키 기반), URL(예:http://www.fourthcoffee.com/process/grind.htm), 사이트 또는 영역별.Domain- 코드는 애플리케이션 도메인과 연결된 증명 정보를 기반으로 식별됩니다. 웹 애플리케이션 ID는 사이트의 URL 또는 웹 페이지의 URL, 사이트 또는 영역에서 파생됩니다. 로컬 코드 ID는 애플리케이션 디렉터리 경로를 기반으로 합니다.
URL, 사이트 및 영역에 대한 정의는 , UrlIdentityPermission및 SiteIdentityPermission를 참조하세요ZoneIdentityPermission.
이러한 ID는 함께 그룹화되며, 이 경우 원하는 격리된 스토리지를 만들 때까지 ID가 하나씩 적용됩니다. 유효한 그룹은 User+Assembly 및 User+Assembly+Domain입니다. 이 ID 그룹화는 다양한 애플리케이션에서 유용합니다.
데이터가 도메인, 사용자 및 어셈블리에 의해 저장되는 경우 데이터는 해당 어셈블리의 코드만 데이터에 액세스할 수 있다는 점에서 비공개입니다. 또한 데이터 저장소는 실행되는 애플리케이션에 의해 격리되므로 어셈블리가 다른 애플리케이션에 데이터를 노출하여 잠재적인 누출을 나타내지 않습니다.
어셈블리 및 사용자별 격리는 여러 애플리케이션에 적용되는 사용자 데이터에 사용할 수 있습니다. 예를 들어 라이선스 정보 또는 애플리케이션과 독립적인 사용자의 개인 정보(이름, 인증 자격 증명 등)입니다.
IsolatedStorageContainment 는 애플리케이션이 격리된 스토리지를 사용할 수 있는지 여부와 격리된 스토리지를 사용할 수 있는 ID 조합이 허용되는지 여부를 결정하는 플래그를 노출합니다. 또한 애플리케이션이 사용자와 함께 로밍할 수 있는 위치에 정보를 저장할 수 있는지 여부를 결정합니다(Windows 로밍 사용자 프로필 또는 폴더 리디렉션을 구성해야 함).