internal void RemoveSensitivityLabels(SqlDatabaseSensitivityClassificationModel model)
 {
     ModifySensitivityLabels(model, sensitivityLabelModel => Communicator.DeleteSensitivityLabel(
                                 model.ResourceGroupName,
                                 model.ServerName,
                                 model.DatabaseName,
                                 sensitivityLabelModel.SchemaName,
                                 sensitivityLabelModel.TableName,
                                 sensitivityLabelModel.ColumnName));
 }
 internal void RemoveSensitivityLabels(SqlDatabaseSensitivityClassificationModel model)
 {
     SplitSensitivityLabelsIntoListsAndPatch(model.SensitivityLabels,
                                             list => Communicator.PatchSensitivityLabels(
                                                 model.ResourceGroupName,
                                                 model.ServerName,
                                                 model.DatabaseName,
                                                 new PatchOperations
     {
         Operations = list.Select(sensitivityLabelModel => new PatchOperation
         {
             OperationKind = PatchOperationKind.Remove,
             Schema        = sensitivityLabelModel.SchemaName,
             Table         = sensitivityLabelModel.TableName,
             Column        = sensitivityLabelModel.ColumnName,
         }).ToList()
     }));
 }
 protected override SqlDatabaseSensitivityClassificationModel PersistChanges(SqlDatabaseSensitivityClassificationModel entity)
 {
     ModelAdapter.EnableSensitivityRecommendations(entity);
     return(null);
 }
Esempio n. 4
0
 protected override SqlDatabaseSensitivityClassificationModel PersistChanges(SqlDatabaseSensitivityClassificationModel entity)
 {
     ModelAdapter.SetSensitivityLabels(entity);
     return(null);
 }
Esempio n. 5
0
        protected override SqlDatabaseSensitivityClassificationModel ApplyUserInputToModel(SqlDatabaseSensitivityClassificationModel model)
        {
            InformationProtectionPolicy informationProtectionPolicy = ModelAdapter.RetrieveInformationProtectionPolicyAsync().Result;

            if (ParameterSetName == DataClassificationCommon.ColumnParameterSet ||
                ParameterSetName == DataClassificationCommon.DatabaseObjectColumnParameterSet)
            {
                SensitivityLabelModel sensitivityLabelModel = model.SensitivityLabels.FirstOrDefault();
                if (sensitivityLabelModel == null)
                {
                    sensitivityLabelModel = new SensitivityLabelModel
                    {
                        SchemaName = SchemaName,
                        TableName  = TableName,
                        ColumnName = ColumnName,
                    };

                    model.SensitivityLabels.Add(sensitivityLabelModel);
                }

                sensitivityLabelModel.ApplyInput(InformationType, SensitivityLabel, informationProtectionPolicy);
            }
            else
            {
                model.ApplyModel(ClassificationObject, informationProtectionPolicy);
            }

            return(model);
        }