/// <summary> /// Provides a database Vulnerability Assessment Rule Baseline model for the given database /// </summary> public DatabaseVulnerabilityAssessmentRuleBaselineModel GetDatabaseVulnerabilityAssessmentRuleBaseline(string resourceGroup, string serverName, string databaseName, string ruleId, bool ruleAppliesToMaster) { var vulnerabilityAssessmentRuleBaseline = VulnerabilityAssessmentCommunicator.GetDatabaseVulnerabilityAssessmentRuleBaseline(resourceGroup, serverName, databaseName, ruleId, ruleAppliesToMaster); var ruleBaselineModel = new DatabaseVulnerabilityAssessmentRuleBaselineModel() { ResourceGroupName = resourceGroup, ServerName = serverName, DatabaseName = databaseName, RuleId = ruleId, RuleAppliesToMaster = ruleAppliesToMaster }; ruleBaselineModel.BaselineResult = new List <DatabaseVulnerabilityAssessmentRuleBaselineRowModel>(); foreach (var baselineResult in vulnerabilityAssessmentRuleBaseline.BaselineResults) { var ruleBaselineItem = new DatabaseVulnerabilityAssessmentRuleBaselineRowModel() { Result = baselineResult.Result }; ruleBaselineModel.BaselineResult.Add(ruleBaselineItem); } return(ruleBaselineModel); }
protected override string GetDatabaseName() { if (string.Equals(this.ParameterSetName, SetByInputObjectParameterSet, StringComparison.OrdinalIgnoreCase)) { DatabaseVulnerabilityAssessmentRuleBaselineModel databaseInputObject = InputObject as DatabaseVulnerabilityAssessmentRuleBaselineModel; if (databaseInputObject == null) { throw new Exception(Properties.Resources.VulnerabilityAssessmentWrongParameterType); } return(databaseInputObject.DatabaseName); } return(DatabaseName); }
/// <summary> /// Transforms the given model to its endpoints acceptable structure and sends it to the endpoint /// </summary> public void SetDatabaseVulnerabilityAssessmentRuleBaseline(DatabaseVulnerabilityAssessmentRuleBaselineModel model) { var ruleBaseline = new DatabaseVulnerabilityAssessmentRuleBaseline() { BaselineResults = new List <DatabaseVulnerabilityAssessmentRuleBaselineItem>() }; foreach (var baselineResult in model.BaselineResult) { var ruleBaselineItem = new DatabaseVulnerabilityAssessmentRuleBaselineItem() { Result = baselineResult.Result }; ruleBaseline.BaselineResults.Add(ruleBaselineItem); } VulnerabilityAssessmentCommunicator.SetDatabaseVulnerabilityAssessmentRuleBaseline(model.ResourceGroupName, model.ServerName, model.DatabaseName, model.RuleId, model.RuleAppliesToMaster, ruleBaseline); }
/// <summary> /// No sending is needed as this is a Get cmdlet /// </summary> /// <param name="model">The model object with the data to be sent to the REST endpoints</param> protected override DatabaseVulnerabilityAssessmentRuleBaselineModel PersistChanges(DatabaseVulnerabilityAssessmentRuleBaselineModel model) { ModelAdapter.ClearDatabaseVulnerabilityAssessmentRuleBaseline(model); return(model); }
/// <summary> /// Updates the given model element with the cmdlet specific operation /// </summary> /// <param name="model">A model object</param> protected override DatabaseVulnerabilityAssessmentRuleBaselineModel ApplyUserInputToModel(DatabaseVulnerabilityAssessmentRuleBaselineModel model) { base.ApplyUserInputToModel(model); if (string.Equals(this.ParameterSetName, SetByInputObjectParameterSet, StringComparison.OrdinalIgnoreCase)) { model.BaselineResult = InputObject.BaselineResult; model.RuleId = InputObject.RuleId; return(model); } model.BaselineResult = new List <DatabaseVulnerabilityAssessmentRuleBaselineRowModel>(); foreach (var baselineResult in BaselineResult) { var ruleBaselineItem = new DatabaseVulnerabilityAssessmentRuleBaselineRowModel() { Result = baselineResult }; model.BaselineResult.Add(ruleBaselineItem); } model.RuleId = RuleId; model.RuleAppliesToMaster = RuleAppliesToMaster.IsPresent; return(model); }
/// <summary> /// Remove the Vulnerability Assessment Rule Baseline /// </summary> public void ClearDatabaseVulnerabilityAssessmentRuleBaseline(DatabaseVulnerabilityAssessmentRuleBaselineModel model) { VulnerabilityAssessmentCommunicator.ClearDatabaseVulnerabilityAssessmentRuleBaseline(model.ResourceGroupName, model.ServerName, model.DatabaseName, model.RuleId, model.RuleAppliesToMaster); }