IApplicationTrustManager.DetermineApplicationTrust Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menentukan apakah aplikasi harus dijalankan dan kumpulan izin mana yang harus diberikan padanya.
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
Parameter
- activationContext
- ActivationContext
Konteks aktivasi untuk aplikasi.
- context
- TrustManagerContext
Konteks manajer kepercayaan untuk aplikasi.
Mengembalikan
Objek yang berisi keputusan keamanan tentang aplikasi.
Contoh
Contoh berikut menunjukkan implementasi DetermineApplicationTrust metode untuk manajer kepercayaan kustom. Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk IApplicationTrustManager antarmuka.
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
Keterangan
Metode DetermineApplicationTrust ini dipanggil oleh host untuk menentukan apakah aplikasi harus dijalankan dan kumpulan izin mana yang harus diberikan. DetermineApplicationTrust ApplicationTrust mengembalikan objek dengan DefaultGrantSet properti yang berisi kumpulan izin yang mewakili izin yang akan diberikan kepada setiap rakitan yang dijalankan dalam konteks aplikasi. Izin yang diberikan tidak berlaku untuk rakitan di cache perakitan global. Objek ApplicationTrust juga memiliki IsApplicationTrustedToRun properti yang ditetapkan manajer kepercayaan untuk menunjukkan apakah aplikasi harus dipercaya. Jika manajer kepercayaan menunjukkan bahwa aplikasi dapat dipercaya, host mengaktifkan aplikasi dan memberikan kumpulan izin yang disediakan dalam ApplicationTrust koleksi.