protected override ServerBlobAuditingSettingsModel GetEntity() { ServerBlobAuditingSettingsModel model = null; if (ParameterSetName == DefinitionsCommon.BlobStorageParameterSetName || ParameterSetName == DefinitionsCommon.StorageAccountSubscriptionIdParameterSetName || ParameterSetName == DefinitionsCommon.BlobStorageByParentResourceParameterSetName || ParameterSetName == DefinitionsCommon.StorageAccountSubscriptionIdByParentResourceParameterSetName) { if (BlobStorage.IsPresent == false) { WriteWarning(DefinitionsCommon.AuditLogsDestinationWasNotSpecifiedWarning); } model = new ServerBlobAuditingSettingsModel(); } else if (ParameterSetName == DefinitionsCommon.EventHubParameterSetName || ParameterSetName == DefinitionsCommon.EventHubByParentResourceParameterSetName) { model = new ServerEventHubAuditingSettingsModel(); } else if (ParameterSetName == DefinitionsCommon.LogAnalyticsParameterSetName || ParameterSetName == DefinitionsCommon.LogAnalyticsByParentResourceParameterSetName) { model = new ServerLogAnalyticsAuditingSettingsModel(); } if (InputObject == null) { model.ResourceGroupName = ResourceGroupName; model.ServerName = ServerName; } else { model.ResourceGroupName = InputObject.ResourceGroupName; model.ServerName = InputObject.ServerName; } ModelAdapter.GetAuditingSettings(model.ResourceGroupName, model.ServerName, model); return(model); }
/// <summary> /// Updates the given model element with the cmdlet specific operation /// </summary> /// <param name="model">A model object</param> protected override ServerBlobAuditingSettingsModel ApplyUserInputToModel(ServerBlobAuditingSettingsModel model) { base.ApplyUserInputToModel(model); model.AuditState = State == SecurityConstants.Enabled ? AuditStateType.Enabled : AuditStateType.Disabled; if (AuditActionGroup != null) { model.AuditActionGroup = AuditActionGroup; } if (PredicateExpression != null) { model.PredicateExpression = PredicateExpression = PredicateExpression; } if (ParameterSetName == DefinitionsCommon.BlobStorageParameterSetName || ParameterSetName == DefinitionsCommon.StorageAccountSubscriptionIdParameterSetName || ParameterSetName == DefinitionsCommon.BlobStorageByParentResourceParameterSetName || ParameterSetName == DefinitionsCommon.StorageAccountSubscriptionIdByParentResourceParameterSetName) { if (RetentionInDays != null) { model.RetentionInDays = RetentionInDays; } if (StorageAccountName != null) { model.StorageAccountName = StorageAccountName; } if (MyInvocation.BoundParameters.ContainsKey(SecurityConstants.StorageKeyType)) // the user enter a key type - we use it (and running over the previously defined key type) { model.StorageKeyType = (StorageKeyType == SecurityConstants.Primary) ? StorageKeyKind.Primary : StorageKeyKind.Secondary; } if (!StorageAccountSubscriptionId.Equals(Guid.Empty)) { model.StorageAccountSubscriptionId = StorageAccountSubscriptionId; } else if (StorageAccountName != null) { model.StorageAccountSubscriptionId = Guid.Parse(DefaultProfile.DefaultContext.Subscription.Id); } } else if (ParameterSetName == DefinitionsCommon.EventHubParameterSetName || ParameterSetName == DefinitionsCommon.EventHubByParentResourceParameterSetName) { ServerEventHubAuditingSettingsModel eventHubModel = model as ServerEventHubAuditingSettingsModel; if (EventHubName != null) { eventHubModel.EventHubName = EventHubName; } if (EventHubAuthorizationRuleResourceId != null) { eventHubModel.EventHubAuthorizationRuleResourceId = EventHubAuthorizationRuleResourceId; } } else if (ParameterSetName == DefinitionsCommon.LogAnalyticsParameterSetName || ParameterSetName == DefinitionsCommon.LogAnalyticsByParentResourceParameterSetName) { ServerLogAnalyticsAuditingSettingsModel logAnalyticsModel = model as ServerLogAnalyticsAuditingSettingsModel; if (WorkspaceResourceId != null) { logAnalyticsModel.WorkspaceResourceId = WorkspaceResourceId; } } return(model); }