private bool UpdateDiagnosticSettingsForModel( DiagnosticSettingsResource settings, AuditModelType model) { DiagnosticSettingsResource modifiedSettings = UpdateDiagnosticSettings(settings, model); if (modifiedSettings == null) { return(false); } List <DiagnosticSettingsResource> diagnosticsEnablingAuditCategory = new List <DiagnosticSettingsResource>(); foreach (DiagnosticSettingsResource existingSettings in model.DiagnosticsEnablingAuditCategory) { if (!string.Equals(modifiedSettings.Id, existingSettings.Id)) { diagnosticsEnablingAuditCategory.Add(existingSettings); } else if (AuditingEndpointsCommunicator.IsAuditCategoryEnabled(modifiedSettings, GetDiagnosticsEnablingAuditCategoryName())) { diagnosticsEnablingAuditCategory.Add(modifiedSettings); } } model.DiagnosticsEnablingAuditCategory = diagnosticsEnablingAuditCategory.Any() ? diagnosticsEnablingAuditCategory : null; return(true); }
public SqlAuditAdapter(IAzureContext context) { Context = context; Subscription = context?.Subscription; Communicator = new AuditingEndpointsCommunicator(Context); AzureCommunicator = new AzureEndpointsCommunicator(Context); }
internal bool UpdateDiagnosticSettings( DiagnosticSettingsResource settings, dynamic model) { DiagnosticSettingsResource updatedSettings; if (model is DatabaseBlobAuditingSettingsModel || model is DatabaseAuditModel) { updatedSettings = Communicator.UpdateDiagnosticSettings(settings, model.ResourceGroupName, model.ServerName, model.DatabaseName); } else { updatedSettings = Communicator.UpdateDiagnosticSettings(settings, model.ResourceGroupName, model.ServerName); } if (updatedSettings == null) { return(false); } model.DiagnosticsEnablingAuditCategory = AuditingEndpointsCommunicator.IsAuditCategoryEnabled(updatedSettings) ? new List <DiagnosticSettingsResource> { updatedSettings } : null; return(true); }
public SqlAuditAdapter(AzureProfile profile, AzureSubscription subscription) { Profile = profile; Subscription = subscription; Communicator = new AuditingEndpointsCommunicator(Profile, subscription); AzureCommunicator = new AzureEndpointsCommunicator(Profile, subscription); IgnoreStorage = false; }
public SqlAuditAdapter(AzureContext context) { Context = context; Subscription = context.Subscription; Communicator = new AuditingEndpointsCommunicator(Context); AzureCommunicator = new AzureEndpointsCommunicator(Context); IgnoreStorage = false; }
public SqlAuditAdapter(IAzureContext context, Guid roleAssignmentId = default(Guid)) { Context = context; Subscription = context?.Subscription; Communicator = new AuditingEndpointsCommunicator(Context); AzureCommunicator = new AzureEndpointsCommunicator(Context); RoleAssignmentId = roleAssignmentId; }
internal bool UpdateDiagnosticSettings( DiagnosticSettingsResource settings, ServerAuditModel model) { DiagnosticSettingsResource modifiedSettings; if (model is DatabaseAuditModel databaseAuditModel) { modifiedSettings = Communicator.UpdateDiagnosticSettings(settings, databaseAuditModel.ResourceGroupName, databaseAuditModel.ServerName, databaseAuditModel.DatabaseName); } else { modifiedSettings = Communicator.UpdateDiagnosticSettings(settings, model.ResourceGroupName, model.ServerName); } if (modifiedSettings == null) { return(false); } List <DiagnosticSettingsResource> diagnosticsEnablingAuditCategory = new List <DiagnosticSettingsResource>(); foreach (DiagnosticSettingsResource existingSettings in model.DiagnosticsEnablingAuditCategory) { if (!string.Equals(modifiedSettings.Id, existingSettings.Id)) { diagnosticsEnablingAuditCategory.Add(existingSettings); } else if (AuditingEndpointsCommunicator.IsAuditCategoryEnabled(modifiedSettings)) { diagnosticsEnablingAuditCategory.Add(modifiedSettings); } } model.DiagnosticsEnablingAuditCategory = diagnosticsEnablingAuditCategory.Any() ? diagnosticsEnablingAuditCategory : null; return(true); }