AuditLogLocation Enumerazione
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Specifica il percorso in cui vengono scritti i registri eventi di sicurezza.
public enum class AuditLogLocation
public enum AuditLogLocation
type AuditLogLocation =
Public Enum AuditLogLocation
- Ereditarietà
Campi
Application | 1 | Specifica come registro eventi il Registro applicazioni. |
Default | 0 | Specifica la posizione predefinita, determinata dal sistema operativo. Se la scrittura nel log di sicurezza è supportata, ad esempio nelle piattaforme Windows Vista e Windows Server 2003 e successive, il percorso del log predefinito è il log di sicurezza. In caso contrario, ad esempio in Windows XP SP2, il percorso del log predefinito è il registro applicazioni. |
Security | 2 | Specifica come registro eventi il Registro sicurezza. Per poter scrivere nel registro sicurezza, il thread chiamante deve disporre del privilegio |
Esempio
Nell'esempio seguente la ServiceSecurityAuditBehavior.AuditLogLocation proprietà viene impostata su uno dei AuditLogLocation
valori :
public static void Main()
{
// Get base address from appsettings in configuration.
Uri baseAddress = new Uri(ConfigurationManager.
AppSettings["baseAddress"]);
// Create a ServiceHost for the CalculatorService type
// and provide the base address.
using (ServiceHost serviceHost = new
ServiceHost(typeof(CalculatorService), baseAddress))
{
// Create a new auditing behavior and set the log location.
ServiceSecurityAuditBehavior newAudit =
new ServiceSecurityAuditBehavior();
newAudit.AuditLogLocation =
AuditLogLocation.Application;
newAudit.MessageAuthenticationAuditLevel =
AuditLevel.SuccessOrFailure;
newAudit.ServiceAuthorizationAuditLevel =
AuditLevel.SuccessOrFailure;
newAudit.SuppressAuditFailure = false;
// Remove the old behavior and add the new.
serviceHost.Description.
Behaviors.Remove<ServiceSecurityAuditBehavior>();
serviceHost.Description.Behaviors.Add(newAudit);
// Open the ServiceHostBase to create listeners
// and start listening for messages.
serviceHost.Open();
// The service can now be accessed.
Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHostBase to shutdown the service.
serviceHost.Close();
}
}
Public Shared Sub Main()
' Get base address from appsettings in configuration.
Dim baseAddress As New Uri(ConfigurationManager.AppSettings("baseAddress"))
' Create a ServiceHost for the CalculatorService type
' and provide the base address.
Dim serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)
Try
' Create a new auditing behavior and set the log location.
Dim newAudit As New ServiceSecurityAuditBehavior()
newAudit.AuditLogLocation = AuditLogLocation.Application
newAudit.MessageAuthenticationAuditLevel = _
AuditLevel.SuccessOrFailure
newAudit.ServiceAuthorizationAuditLevel = _
AuditLevel.SuccessOrFailure
newAudit.SuppressAuditFailure = False
' Remove the old behavior and add the new.
serviceHost.Description.Behaviors.Remove(Of ServiceSecurityAuditBehavior)
serviceHost.Description.Behaviors.Add(newAudit)
' Open the ServiceHostBase to create listeners
' and start listening for messages.
serviceHost.Open()
' The service can now be accessed.
Console.WriteLine("The service is ready.")
Console.WriteLine("Press <ENTER> to terminate service.")
Console.WriteLine()
Console.ReadLine()
' Close the ServiceHostBase to shutdown the service.
serviceHost.Close()
Finally
End Try
End Sub
Commenti
Quando si crea un'applicazione Windows Communication Foundation (WCF) che richiede l'autenticazione e/o l'autorizzazione dei chiamanti, è possibile specificare che gli eventi correlati alla sicurezza vengano registrati per esito positivo, negativo o entrambi. Il percorso del registro viene determinato in base a questa enumerazione.
Per definire il livello del registro di controllo è possibile impostare la proprietà MessageAuthenticationAuditLevel o la proprietà ServiceAuthorizationAuditLevel della classe ServiceSecurityAuditBehavior su uno dei valori dell'enumerazione AuditLevel.
È anche possibile specificare il comportamento di controllo usando l'associazione <serviceSecurityAudit> .
Importante
Se la AuditLogLocation proprietà è impostata su Sicurezza e Audit Object Access
non è impostata in Local Security Policy
, gli eventi di controllo non verranno scritti nel log di sicurezza. Benché non venga restituito alcun errore, le voci di controllo non vengono scritte nel registro sicurezza. Inoltre, per poter scrivere nel registro sicurezza, il thread chiamante deve disporre del privilegio SeAuditPrivilege
.
Determinazione del registro predefinito in base al sistema operativo
Quando si imposta la proprietà sul valore Default, il sistema operativo determina il log in cui verrà effettivamente scritto. Per altre informazioni, vedere Controllo.