/// <summary> /// Audits an attempt to delete the root folder. /// </summary> public static void AuditDeleteRootAttempt(this IAuditor auditor, IVirtualFolderItem folder) { if (!auditor.IsWarnEnabledFor(FileSystemTask.FolderDeleteRequest)) { return; } string msg = String.Format("Blocked attempt to delete root folder.\n\n{0}", folder.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, FileSystemTask.FolderDeleteRequest, AuditEvent.DeleteFileSystemRoot, msg); }
public static void AuditDeniedFolderCreation(this IAuditor auditor, AuditEvent eventId, IVirtualFolderItem folder) { if (!auditor.IsWarnEnabledFor(FileSystemTask.FolderCreateRequest)) { return; } string msg = String.Format("Blocked attempt to create folder on file system. Folder information:\n{0}", folder.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, FileSystemTask.FolderCreateRequest, eventId, msg); }
/// <summary> /// Audits a request for an unknown transfer. /// </summary> public static void AuditUnknownTransferRequest(this IAuditor auditor, FileSystemTask context, string transferId) { if (!auditor.IsWarnEnabledFor(context)) { return; } string msg = String.Format("Request for unknown transfer [{0}] received.", transferId); auditor.Audit(AuditLevel.Warning, context, AuditEvent.UnknownTransferRequest, msg); }
/// <summary> /// Audits an invalid request to pause a transfer although the transfer is not active. /// </summary> public static void AuditInvalidTransferPauseRequest(this IAuditor auditor, ITransfer transfer, FileSystemTask context, AuditEvent eventId) { if (!auditor.IsWarnEnabledFor(context)) { return; } string msg = "Received request to pause transfer [{0}] for resource [{1}], which was denied because the transfer's status is [{2}]."; msg = String.Format(msg, transfer.Token.TransferId, transfer.Token.ResourceIdentifier, transfer.Status); auditor.Audit(AuditLevel.Warning, context, eventId, msg); }
/// <summary> /// Audits a request for a file resource that was not found on the file system. /// </summary> public static void AuditRequestedFileNotFound(this IAuditor auditor, IVirtualFileItem file, FileSystemTask task) { if (!auditor.IsWarnEnabledFor(task)) { return; } string msg = "Could not handle request for file [{0}] - the file was not found on the file system.\n\n{1}"; msg = String.Format(msg, file.ResourceInfo.Name, file.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, task, AuditEvent.FileNotFound, msg); }
/// <summary> /// Audits a request for a folder that was not found on the file system. /// </summary> public static void AuditRequestedFolderNotFound(this IAuditor auditor, IVirtualFolderItem folder, FileSystemTask context) { if (!auditor.IsWarnEnabledFor(context)) { return; } string msg = "Could not handle request for folder [{0}] - the folder was not found on the file system.\n\n{1}"; msg = String.Format(msg, folder.ResourceInfo.Name, folder.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, context, AuditEvent.FolderNotFound, msg); }
/// <summary> /// Audits a denied request for a folder's contents. /// </summary> public static void AuditDeniedFolderContentsRequest(this IAuditor auditor, FileSystemTask context, IVirtualFolderItem parentFolder) { if (!auditor.IsWarnEnabledFor(context)) { return; } string msg = "Denied access to contents of folder [{0}]. Folder details:\n\n{1}"; msg = String.Format(msg, parentFolder.ResourceInfo.Name, parentFolder.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, context, AuditEvent.ListFolderContentsDenied, msg); }
/// <summary> /// Audits a request for the file system's root folder. /// </summary> public static void AuditInvalidRootParentRequest(this IAuditor auditor, IVirtualFolderItem childFolder) { if (!auditor.IsWarnEnabledFor(FileSystemTask.FolderParentRequest)) { return; } string msg = "Parent folder request for file system root was blocked. Submitted folder:\n{0}"; msg = String.Format(msg, childFolder.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, FileSystemTask.FolderParentRequest, AuditEvent.FolderInfoRequested, msg); }
/// <summary> /// Audits a file system operation that was blocked as a warning. /// </summary> public static void AuditDeniedOperation <T>(this IAuditor auditor, FileSystemTask context, AuditEvent eventId, IVirtualResourceItem <T> resource, string message) where T : VirtualResourceInfo { if (!auditor.IsWarnEnabledFor(context)) { return; } string msg = String.Format("Blocked operation '{0}' due to event '{1}'.", context, eventId); if (!String.IsNullOrEmpty(message)) { msg = String.Format("{0}\n{1}", msg, message); } msg = String.Format("{0}\n\n{1}", msg, resource.CreateResourceInfoString()); auditor.Audit(AuditLevel.Warning, context, eventId, msg); }