ReflectionPermissionFlag Sabit listesi
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Dikkat
Code Access Security is not supported or honored by the runtime.
ve System.Reflection.Emit ad alanlarının System.Reflection izin verilen kullanımını belirtir.
Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.
public enum class ReflectionPermissionFlag
[System.Flags]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum ReflectionPermissionFlag
[<System.Flags>]
type ReflectionPermissionFlag =
[<System.Flags>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type ReflectionPermissionFlag =
[<System.Flags>]
[<System.Serializable>]
type ReflectionPermissionFlag =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermissionFlag =
Public Enum ReflectionPermissionFlag
- Devralma
- Öznitelikler
Alanlar
AllFlags | 7 |
|
MemberAccess | 2 | İzin kümesine bakılmaksızın tüm üyeler üzerinde çağırma işlemlerine izin verilir. Bu bayrak ayarlanmadıysa, çağırma işlemlerine yalnızca görünür üyelerde izin verilir. |
NoFlags | 0 | Türlerin ve üyelerin listelenmesine izin verilir. Görünür türlerde ve üyelerde çağırma işlemlerine izin verilir. |
ReflectionEmit | 4 | Hata ayıklama simgelerini yaymaya izin verilir. .NET Framework 2.0 Service Pack 1'inden başlayarak bu bayrak artık kod yaymak için gerekli değildir. |
RestrictedMemberAccess | 8 | Kısmen güvenilen kod için kısıtlı üye erişimi sağlanır. Kısmen güvenilen kod, abonelik dışı türlere ve üyelere erişebilir, ancak yalnızca kısmen güvenilen kodun izin kümesi, abonelik dışı türleri ve erişilen üyeleri içeren derlemenin izin kümesindeki tüm izinleri içeriyorsa. Bu bayrak .NET Framework 2.0 SP1'de yenidir. |
TypeInformation | 1 | Bu bayrak kullanımdan kaldırıldı. Türleri ve üyeleri listelemek ve meta verilerini incelemek için hiçbir bayrak gerekli değildir. Bunun yerine NoFlags kullanın. |
Örnekler
Aşağıdaki örnekte, kısıtlı üye erişimi gerçekleştirme hakkını temsil eden sınıfın ReflectionPermission yeni bir örneğini başlatmak için numaralandırmanın nasıl kullanılacağı ReflectionPermissionFlag
gösterilmektedir. Bu örnek, sınıfı için ReflectionPermission sağlanan daha büyük bir örneğin bir parçasıdır.
RestrictedMemberAccess bayrağının İnternet koduyla nasıl kullanılacağını gösteren bir örnek için bkz. İzlenecek Yol: Kısmi Güven Senaryolarında Kod Yayma.
ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
Açıklamalar
Dikkat
Kod Erişim Güvenliği (CAS), .NET Framework ve .NET'in tüm sürümlerinde kullanım dışı bırakılmıştır. .NET'in son sürümleri CAS ek açıklamalarını dikkate almaz ve CAS ile ilgili API'ler kullanılıyorsa hata üretir. Geliştiriciler, güvenlik görevlerini yerine getirmek için alternatif yöntemler aramalıdır.
Bu numaralandırma ve ReflectionPermissionAttribute sınıfları tarafından ReflectionPermission kullanılır. Hayır ReflectionPermission izni verilmiyorsa, tüm türlerde ve üyelerde yansımaya izin verilir, ancak çağırma işlemlerine yalnızca görünür türlerde ve üyelerde izin verilir. Daha fazla bilgi için bkz. Yansıma için Güvenlikle İlgili Dikkat Edilmesi Gerekenler.
Dikkat
ReflectionPermission Özel sınıf üyelerine erişim sağlayabildiği için, İnternet koduna diğer bayraklarla RestrictedMemberAccess
değil yalnızca bayrakla vermenizi ReflectionPermission öneririz.
bayrağı RestrictedMemberAccess
.NET Framework 2.0 SP1'de tanıtılır. Bu bayrağı kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Önemli
AllFlags
bayrağını RestrictedMemberAccess
içermez. Bu numaralandırmadaki tüm bayrakları içeren bir maske almak için ile RestrictedMemberAccess
birleşimini AllFlags
kullanmanız gerekir.
.NET Framework 2.0 SP1'den başlayarak, ReflectionEmit
hata ayıklama simgeleri yayılmadığı sürece kodu yaymak için bayrağı artık gerekli değildir. Bu özelliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
.NET Framework 2.0'dan başlayarak, bayrağın TypeInformation
artık abonelik dışı türleri ve üyeleri yansıtması gerekmez; bayrak eski olarak işaretlendi.