Mike Kolesnik has uploaded a new change for review. Change subject: engine: Added audit logging to provider commands ......................................................................
engine: Added audit logging to provider commands Change-Id: Ic1430d75d77195c9274304d53bd66ddc1e7a073e Signed-off-by: Mike Kolesnik <mkole...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/AddProviderCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/RemoveProviderCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/UpdateProviderCommand.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java M backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties 6 files changed, 75 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/63/12363/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/AddProviderCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/AddProviderCommand.java index 50a0d5f..4c987a4 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/AddProviderCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/AddProviderCommand.java @@ -5,6 +5,7 @@ import org.ovirt.engine.core.bll.CommandBase; import org.ovirt.engine.core.bll.utils.PermissionSubject; +import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.VdcObjectType; import org.ovirt.engine.core.common.action.ProviderParameters; import org.ovirt.engine.core.common.businessentities.ActionGroup; @@ -12,8 +13,10 @@ import org.ovirt.engine.core.common.validation.group.CreateEntity; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.VdcBllMessages; +import org.ovirt.engine.core.dal.dbbroker.auditloghandling.CustomLogField; @SuppressWarnings("serial") +@CustomLogField("ProviderName") public class AddProviderCommand<P extends ProviderParameters> extends CommandBase<P> { public AddProviderCommand(Guid commandId) { @@ -26,6 +29,10 @@ private Provider getProvider() { return getParameters().getProvider(); + } + + public String getProviderName() { + return getProvider().getName(); } @Override @@ -60,4 +67,9 @@ addValidationGroup(CreateEntity.class); return super.getValidationGroups(); } + + @Override + public AuditLogType getAuditLogTypeValue() { + return getSucceeded() ? AuditLogType.PROVIDER_ADDED : AuditLogType.PROVIDER_ADDITION_FAILED; + } } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/RemoveProviderCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/RemoveProviderCommand.java index d62504c..9c9c561 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/RemoveProviderCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/RemoveProviderCommand.java @@ -5,14 +5,18 @@ import org.ovirt.engine.core.bll.CommandBase; import org.ovirt.engine.core.bll.utils.PermissionSubject; +import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.VdcObjectType; import org.ovirt.engine.core.common.action.ProviderParameters; import org.ovirt.engine.core.common.businessentities.ActionGroup; +import org.ovirt.engine.core.common.businessentities.Provider; import org.ovirt.engine.core.common.validation.group.RemoveEntity; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.VdcBllMessages; +import org.ovirt.engine.core.dal.dbbroker.auditloghandling.CustomLogField; @SuppressWarnings("serial") +@CustomLogField("ProviderName") public class RemoveProviderCommand<P extends ProviderParameters> extends CommandBase<P> { public RemoveProviderCommand(Guid commandId) { @@ -21,6 +25,11 @@ public RemoveProviderCommand(P parameters) { super(parameters); + } + + public String getProviderName() { + Provider provider = getDbFacade().getNetworkProviderDao().get(getParameters().getProvider().getId()); + return provider == null ? null : provider.getName(); } @Override @@ -47,4 +56,9 @@ addValidationGroup(RemoveEntity.class); return super.getValidationGroups(); } + + @Override + public AuditLogType getAuditLogTypeValue() { + return getSucceeded() ? AuditLogType.PROVIDER_REMOVED : AuditLogType.PROVIDER_REMOVAL_FAILED; + } } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/UpdateProviderCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/UpdateProviderCommand.java index 43b040a..9b04b56 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/UpdateProviderCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/provider/UpdateProviderCommand.java @@ -5,6 +5,7 @@ import org.ovirt.engine.core.bll.CommandBase; import org.ovirt.engine.core.bll.utils.PermissionSubject; +import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.VdcObjectType; import org.ovirt.engine.core.common.action.ProviderParameters; import org.ovirt.engine.core.common.businessentities.ActionGroup; @@ -12,9 +13,13 @@ import org.ovirt.engine.core.common.validation.group.UpdateEntity; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.VdcBllMessages; +import org.ovirt.engine.core.dal.dbbroker.auditloghandling.CustomLogField; @SuppressWarnings("serial") +@CustomLogField("ProviderName") public class UpdateProviderCommand<P extends ProviderParameters> extends CommandBase<P> { + + private Provider oldProvider; public UpdateProviderCommand(Guid commandId) { super(commandId); @@ -28,15 +33,26 @@ return getParameters().getProvider(); } + private Provider getOldProvider() { + if (oldProvider == null) { + oldProvider = getDbFacade().getNetworkProviderDao().get(getProvider().getId()); + } + + return oldProvider; + } + + public String getProviderName() { + return getOldProvider().getName(); + } + @Override protected boolean canDoAction() { ProviderValidator validator = new ProviderValidator(getProvider()); - Provider oldProvider = getDbFacade().getNetworkProviderDao().get(getProvider().getId()); - return nameKept(oldProvider) || validate(validator.nameAvailable()); + return nameKept() || validate(validator.nameAvailable()); } - private boolean nameKept(Provider oldProvider) { - return oldProvider.getName().equals(getProvider().getName()); + private boolean nameKept() { + return getOldProvider().getName().equals(getProvider().getName()); } @Override @@ -63,4 +79,9 @@ addValidationGroup(UpdateEntity.class); return super.getValidationGroups(); } + + @Override + public AuditLogType getAuditLogTypeValue() { + return getSucceeded() ? AuditLogType.PROVIDER_UPDATED : AuditLogType.PROVIDER_UPDATE_FAILED; + } } diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java index eb9d1e4..524b8ab 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java @@ -643,6 +643,14 @@ USER_ACCOUNT_DISABLED_OR_LOCKED(1100, AuditLogTimeInterval.HOUR.getValue()), USER_ACCOUNT_PASSWORD_EXPIRED(1101, AuditLogTimeInterval.HOUR.getValue()), + // Providers + PROVIDER_ADDED(1150), + PROVIDER_ADDITION_FAILED(1151), + PROVIDER_UPDATED(1152), + PROVIDER_UPDATE_FAILED(1153), + PROVIDER_REMOVED(1154), + PROVIDER_REMOVAL_FAILED(1155), + // General ENTITY_RENAMED(1200), diff --git a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java index 425f1ba..af7002b 100644 --- a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java +++ b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogDirector.java @@ -40,6 +40,7 @@ private static void initSeverities() { initDefaultSeverities(); + initProviderSeverities(); initNetworkSeverities(); initImportExportSeverities(); initEngineSeverities(); @@ -60,6 +61,15 @@ initCommonSeverities(); } + private static void initProviderSeverities() { + severities.put(AuditLogType.PROVIDER_ADDED, AuditLogSeverity.NORMAL); + severities.put(AuditLogType.PROVIDER_ADDITION_FAILED, AuditLogSeverity.ERROR); + severities.put(AuditLogType.PROVIDER_UPDATED, AuditLogSeverity.NORMAL); + severities.put(AuditLogType.PROVIDER_UPDATE_FAILED, AuditLogSeverity.ERROR); + severities.put(AuditLogType.PROVIDER_REMOVED, AuditLogSeverity.NORMAL); + severities.put(AuditLogType.PROVIDER_REMOVAL_FAILED, AuditLogSeverity.ERROR); + } + private static void initGlusterVolumeSeverities() { severities.put(AuditLogType.GLUSTER_VOLUME_CREATE, AuditLogSeverity.NORMAL); severities.put(AuditLogType.GLUSTER_VOLUME_CREATE_FAILED, AuditLogSeverity.ERROR); diff --git a/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties b/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties index b776f06..8b09e91 100644 --- a/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties +++ b/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties @@ -419,6 +419,12 @@ VDS_NETWORKS_OUT_OF_SYNC=Host ${VdsName}'s following network(s) are not synchronized with their Logical Network configuration: ${Networks}. VDS_SET_NONOPERATIONAL_IFACE_DOWN=Host ${VdsName} moved to Non-Operational state because interfaces '${Interfaces}' are down but are needed by networks '${Networks}' in the current cluster BRIDGED_NETWORK_OVER_MULTIPLE_INTERFACES=Bridged network ${NetworkName} is attached to multiple interfaces: ${Interfaces} on Host ${VdsName}. +PROVIDER_ADDED=Provider ${ProviderName} was added. (User: ${UserName}) +PROVIDER_ADDITION_FAILED=Failed to add provider ${ProviderName}. (User: ${UserName}) +PROVIDER_UPDATED=Provider ${ProviderName} was updated. (User: ${UserName}) +PROVIDER_UPDATE_FAILED=Failed to update provider ${ProviderName}. (User: ${UserName}) +PROVIDER_REMOVED=Provider ${ProviderName} was removed. (User: ${UserName}) +PROVIDER_REMOVAL_FAILED=Failed to remove provider ${ProviderName}. (User: ${UserName}) NETWORK_ADD_NETWORK=Network ${NetworkName} was added to Data Center: ${StoragePoolName} NETWORK_ADD_NETWORK_FAILED=Failed to add Network ${NetworkName} to Data Center: ${StoragePoolName} NETWORK_ADD_TEMPLATE_INTERFACE=Interface ${InterfaceName} (${InterfaceType}) was added to Template ${VmTemplateName}. (User: ${UserName}) -- To view, visit http://gerrit.ovirt.org/12363 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic1430d75d77195c9274304d53bd66ddc1e7a073e Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Mike Kolesnik <mkole...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches