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.