StrongNameIdentityPermission Konstruktory
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Inicjuje nowe wystąpienie klasy StrongNameIdentityPermission.
Przeciążenia
| StrongNameIdentityPermission(PermissionState) |
Inicjuje StrongNameIdentityPermission nowe wystąpienie klasy z określonym PermissionStateelementem . |
| StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version) |
Inicjuje StrongNameIdentityPermission nowe wystąpienie klasy dla określonej tożsamości silnej nazwy. |
StrongNameIdentityPermission(PermissionState)
Inicjuje StrongNameIdentityPermission nowe wystąpienie klasy z określonym PermissionStateelementem .
public:
StrongNameIdentityPermission(System::Security::Permissions::PermissionState state);
public StrongNameIdentityPermission (System.Security.Permissions.PermissionState state);
new System.Security.Permissions.StrongNameIdentityPermission : System.Security.Permissions.PermissionState -> System.Security.Permissions.StrongNameIdentityPermission
Public Sub New (state As PermissionState)
Parametry
- state
- PermissionState
PermissionState Jedna z wartości.
Wyjątki
Parametr state nie jest prawidłową wartością PermissionState.
Przykłady
Poniższy przykład kodu przedstawia użycie konstruktora StrongNameIdentityPermission .
snIdPerm2 = gcnew StrongNameIdentityPermission(PermissionState::None);
snIdPerm2 = new StrongNameIdentityPermission(PermissionState.None);
snIdPerm2 = New StrongNameIdentityPermission(PermissionState.None)
Uwagi
Tworzy w pełni ograniczone (None) lub Unrestricted uprawnienie.
Uwaga
W .NET Framework wersji 1.0 i 1.1 uprawnienia tożsamości nie mogą mieć Unrestricted wartości stanu uprawnień. W .NET Framework w wersji 2.0 lub nowszej uprawnienia tożsamości mogą mieć dowolną wartość stanu uprawnień. Oznacza to, że w wersji 2.0 lub nowszej uprawnienia tożsamości mają takie samo zachowanie jak uprawnienia implementujące IUnrestrictedPermission interfejs. Oznacza to, że żądanie tożsamości zawsze kończy się powodzeniem, niezależnie od tożsamości zestawu, jeśli zestaw otrzymał pełne zaufanie.
W .NET Framework w wersji 1.0 i 1.1 wymagania dotyczące uprawnień tożsamości są skuteczne, nawet jeśli zestaw wywołujący jest w pełni zaufany. Oznacza to, że mimo że zestaw wywołujący ma pełne zaufanie, żądanie uprawnienia tożsamości kończy się niepowodzeniem, jeśli zestaw nie spełnia wymagań kryteriów. W .NET Framework w wersji 2.0 lub nowszej żądania dotyczące uprawnień tożsamości są nieskuteczne, jeśli zestaw wywołujący ma pełne zaufanie. Zapewnia to spójność wszystkich uprawnień, eliminując traktowanie uprawnień tożsamości jako szczególnego przypadku.
Użyj tego konstruktora z wartością stanu uprawnień, None aby utworzyć uprawnienie tożsamości, które nie pasuje do silnych nazw. Jeśli następnie ustawisz Name właściwości i Version , określona tożsamość silnej nazwy może być reprezentowana przez uprawnienie.
Dotyczy
StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)
Inicjuje StrongNameIdentityPermission nowe wystąpienie klasy dla określonej tożsamości silnej nazwy.
public:
StrongNameIdentityPermission(System::Security::Permissions::StrongNamePublicKeyBlob ^ blob, System::String ^ name, Version ^ version);
public StrongNameIdentityPermission (System.Security.Permissions.StrongNamePublicKeyBlob blob, string name, Version version);
new System.Security.Permissions.StrongNameIdentityPermission : System.Security.Permissions.StrongNamePublicKeyBlob * string * Version -> System.Security.Permissions.StrongNameIdentityPermission
Public Sub New (blob As StrongNamePublicKeyBlob, name As String, version As Version)
Parametry
Klucz publiczny definiujący przestrzeń nazw tożsamości silnej nazwy.
- name
- String
Prosta część nazwy tożsamości silnej nazwy. Odpowiada to nazwie zestawu.
- version
- Version
Numer wersji tożsamości.
Wyjątki
Parametr blob ma wartość null.
Parametr name jest pustym ciągiem ("").
Przykłady
Poniższy przykład kodu przedstawia użycie konstruktora StrongNameIdentityPermission .
snIdPerm1 = gcnew StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", gcnew Version("1.0.0.0"));
snIdPerm1 = new StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", new Version("1.0.0.0"));
snIdPerm1 = New StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", New Version("1.0.0.0"))
Uwagi
Parametry name i version mogą być null tylko wtedy, gdy klucz publiczny jest używany do identyfikowania zestawu. Nie należy używać pustego ciągu ("") zamiast .null Jeśli name jest pustym ciągiem, ArgumentException element jest zgłaszany.
Aby uzyskać więcej informacji na temat nazw i numerów wersji zestawów, zobacz Zestawy o silnych nazwach.