IApplicationTrustManager.DetermineApplicationTrust Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Détermine si une application doit être exécutée et quel jeu d'autorisations doit lui être accordé.
public:
System::Security::Policy::ApplicationTrust ^ DetermineApplicationTrust(ActivationContext ^ activationContext, System::Security::Policy::TrustManagerContext ^ context);
public System.Security.Policy.ApplicationTrust DetermineApplicationTrust (ActivationContext activationContext, System.Security.Policy.TrustManagerContext context);
abstract member DetermineApplicationTrust : ActivationContext * System.Security.Policy.TrustManagerContext -> System.Security.Policy.ApplicationTrust
Public Function DetermineApplicationTrust (activationContext As ActivationContext, context As TrustManagerContext) As ApplicationTrust
Paramètres
- activationContext
- ActivationContext
Contexte d'activation de l'application.
- context
- TrustManagerContext
Contexte du gestionnaire de confiance de l'application.
Retours
Objet qui contient les décisions de sécurité sur l'application.
Exemples
L’exemple suivant montre une implémentation de la DetermineApplicationTrust méthode pour un gestionnaire d’approbations personnalisé. Cet exemple de code fait partie d’un exemple plus grand fourni pour l’interface IApplicationTrustManager .
public ApplicationTrust DetermineApplicationTrust(ActivationContext appContext, TrustManagerContext context)
{
ApplicationTrust trust = new ApplicationTrust(appContext.Identity);
trust.IsApplicationTrustedToRun = false;
ApplicationSecurityInfo asi = new ApplicationSecurityInfo(appContext);
trust.DefaultGrantSet = new PolicyStatement(asi.DefaultRequestSet, PolicyStatementAttribute.Nothing);
if (context.UIContext == TrustManagerUIContext.Run)
{
string message = "Do you want to run " + asi.ApplicationId.Name + " ?";
string caption = "MyTrustManager";
MessageBoxButtons buttons = MessageBoxButtons.YesNo;
DialogResult result;
// Displays the MessageBox.
result = MessageBox.Show(message, caption, buttons);
if (result == DialogResult.Yes)
{
trust.IsApplicationTrustedToRun = true;
if (context != null)
trust.Persist = context.Persist;
else
trust.Persist = false;
}
}
return trust;
}
Public Function DetermineApplicationTrust(ByVal appContext As ActivationContext, ByVal context As TrustManagerContext) As ApplicationTrust Implements IApplicationTrustManager.DetermineApplicationTrust
Dim trust As New ApplicationTrust(appContext.Identity)
trust.IsApplicationTrustedToRun = False
Dim asi As New ApplicationSecurityInfo(appContext)
trust.DefaultGrantSet = New PolicyStatement(asi.DefaultRequestSet, _
PolicyStatementAttribute.Nothing)
If context.UIContext = TrustManagerUIContext.Run Then
Dim message As String = "Do you want to run " + asi.ApplicationId.Name + " ?"
Dim caption As String = "MyTrustManager"
Dim buttons As MessageBoxButtons = MessageBoxButtons.YesNo
Dim result As DialogResult
' Displays the MessageBox.
result = MessageBox.Show(message, caption, buttons)
If result = DialogResult.Yes Then
trust.IsApplicationTrustedToRun = True
If Not (context Is Nothing) Then
trust.Persist = context.Persist
Else
trust.Persist = False
End If
End If
End If
Return trust
End Function 'DetermineApplicationTrust
Remarques
La DetermineApplicationTrust méthode est appelée par l’hôte pour déterminer si une application doit être exécutée et quel jeu d’autorisations elle doit lui accorder. DetermineApplicationTrust retourne un ApplicationTrust objet avec une DefaultGrantSet propriété qui contient un jeu d’autorisations représentant les autorisations à accorder à chaque assembly s’exécutant dans le contexte de l’application. Les autorisations accordées ne s’appliquent pas aux assemblys dans le Global Assembly Cache. L’objet ApplicationTrust a également une IsApplicationTrustedToRun propriété que le gestionnaire d’approbations définit pour indiquer si l’application doit être approuvée. Si le gestionnaire d’approbations indique que l’application peut être approuvée, l’hôte active l’application et accorde à ses assemblys le jeu d’autorisations fourni dans la ApplicationTrust collection.