/// <summary> /// Transforms the given model to its endpoints acceptable structure and sends it to the endpoint /// </summary> public void SetDatabaseAuditingPolicy(DatabaseBlobAuditingPolicyModel model, string storageEndpointSuffix) { if (!IsDatabaseInServiceTierForPolicy(model.ResourceGroupName, model.ServerName, model.DatabaseName)) { throw new Exception(Properties.Resources.DatabaseNotInServiceTierForAuditingPolicy); } Management.Sql.Models.DatabaseBlobAuditingPolicy policy = new Management.Sql.Models.DatabaseBlobAuditingPolicy(); PolicizeBlobAuditingModel(model, storageEndpointSuffix, policy); Communicator.SetDatabaseAuditingPolicy(model.ResourceGroupName, model.ServerName, model.DatabaseName, policy); }
/// <summary> /// Transforms the given model to its endpoints acceptable structure and sends it to the endpoint /// </summary> public void SetDatabaseBlobAuditingPolicyV2(DatabaseBlobAuditingSettingsModel model, string storageEndpointSuffix) { if (!IsDatabaseInServiceTierForPolicy(model.ResourceGroupName, model.ServerName, model.DatabaseName)) { throw new Exception(Properties.Resources.DatabaseNotInServiceTierForAuditingPolicy); } if (string.IsNullOrEmpty(model.PredicateExpression)) { var policy = new Management.Sql.Models.DatabaseBlobAuditingPolicy(); PolicizeBlobAuditingModel(model, storageEndpointSuffix, policy); Communicator.SetDatabaseAuditingPolicy(model.ResourceGroupName, model.ServerName, model.DatabaseName, policy); } else { var policy = new Management.Sql.Models.ExtendedDatabaseBlobAuditingPolicy { PredicateExpression = model.PredicateExpression }; PolicizeBlobAuditingModel(model, storageEndpointSuffix, policy); Communicator.SetExtendedDatabaseAuditingPolicy(model.ResourceGroupName, model.ServerName, model.DatabaseName, policy); } }