Udostępnij za pośrednictwem


FirstMatchCodeGroup.Resolve(Evidence) Metoda

Definicja

Rozwiązuje zasady dla grupy kodu i jej elementów podrzędnych dla zestawu dowodów.

public:
 override System::Security::Policy::PolicyStatement ^ Resolve(System::Security::Policy::Evidence ^ evidence);
public override System.Security.Policy.PolicyStatement Resolve (System.Security.Policy.Evidence evidence);
override this.Resolve : System.Security.Policy.Evidence -> System.Security.Policy.PolicyStatement
Public Overrides Function Resolve (evidence As Evidence) As PolicyStatement

Parametry

evidence
Evidence

Dowody na zestaw.

Zwraca

PolicyStatement

Instrukcja zasad składająca się z uprawnień przyznanych przez grupę kodu z opcjonalnymi atrybutami lub null jeśli grupa kodu nie ma zastosowania (warunek członkostwa nie jest zgodny z określonymi dowodami).

Wyjątki

Parametr evidence to null.

Oznaczono Exclusivewięcej niż jedną grupę kodu (w tym nadrzędną grupę kodu i wszystkie podrzędne grupy kodu).

Przykłady

Poniższy kod przedstawia użycie Resolve metody do rozpoznawania zasad dla grupy kodu. Ten przykład kodu jest częścią większego przykładu podanego FirstMatchCodeGroup dla klasy.

Assembly^ assembly = Members::typeid->Assembly;
Evidence^ executingEvidence = assembly->Evidence;

PolicyStatement^ policy = codeGroup->Resolve( executingEvidence );
Assembly assembly = typeof(Members).Assembly;
Evidence executingEvidence = assembly.Evidence;

PolicyStatement policy = codeGroup.Resolve(executingEvidence);
Dim executingAssembly As [Assembly] = Me.GetType().Assembly
Dim executingEvidence As Evidence
executingEvidence = executingAssembly.Evidence

Dim policy As PolicyStatement = codeGroup.Resolve(executingEvidence)

Uwagi

Biorąc pod uwagę dowody na załadowanie zestawu, ta metoda ocenia grupę kodu, sprawdzając najpierw warunek członkostwa względem określonych dowodów. Jeśli istnieje dopasowanie, ta metoda zwraca instrukcję zasad dla grupy kodu, w tym ocenę podrzędnych grup kodu.

W przypadku grup kodu pierwszego dopasowania warunek członkostwa każdej podrzędnej grupy kodu jest testowany względem dowodów w kolejności, w której zostały dodane; tylko pierwsze dopasowanie jest rozwiązywane z zestawem dowodów. Jeśli nie ma dopasowań, ma zastosowanie instrukcja zasad nadrzędnej grupy kodu pierwszego dopasowania. Pasujący podrzędny typ grupy kodu określa, jak są stosowane wszystkie grupy podrzędne, w zależności od tego, jak Resolve działają metody tych grup podrzędnych.

System zabezpieczeń .NET Framework używa Resolve na poziomach zasad w celu określenia, które uprawnienia do przyznania załadowanego kodu z wynikowych instrukcji zasad i żądania kodu w zestawie.

Ta operacja tej metody jest następująca:

Jeśli warunek członkostwa nie jest zgodny z określonymi dowodami, wróć null; w przeciwnym razie ustaw ustawienie uprawnień, które ma zostać zwrócone (P) równe instrukcji zasad grupy kodu i kontynuuj. Dla każdej podrzędnej grupy kodu rozwiąż grupę kodu z tymi samymi dowodami; jeśli wynik nie nullma wartości , zwróć instrukcję zasad. Jeśli żadna podrzędna grupa kodu nie jest zgodna, zwróć wartość P (instrukcja zasad elementu nadrzędnego).

Dotyczy