Esempio n. 1
0
 /// <summary>
 /// Constructs a database adapter
 /// </summary>
 /// <param name="profile">The current azure profile</param>
 /// <param name="subscription">The current azure subscription</param>
 public AzureSqlDatabaseReplicationAdapter(IAzureContext context)
 {
     Context                 = context;
     _subscription           = context?.Subscription;
     ReplicationCommunicator = new AzureSqlDatabaseReplicationCommunicator(Context);
     DatabaseCommunicator    = new AzureSqlDatabaseCommunicator(Context);
     ServerCommunicator      = new AzureSqlServerCommunicator(Context);
 }
 /// <summary>
 /// Constructs a database adapter
 /// </summary>
 /// <param name="profile">The current azure profile</param>
 /// <param name="subscription">The current azure subscription</param>
 public AzureSqlDatabaseReplicationAdapter(AzureProfile Profile, AzureSubscription subscription)
 {
     this.Profile            = Profile;
     this._subscription      = subscription;
     ReplicationCommunicator = new AzureSqlDatabaseReplicationCommunicator(Profile, subscription);
     DatabaseCommunicator    = new AzureSqlDatabaseCommunicator(Profile, subscription);
     ServerCommunicator      = new AzureSqlServerCommunicator(Profile, subscription);
 }
        private bool IsDatabaseInServiceTierForPolicy(string resourceGroupName, string serverName, string databaseName)
        {
            var dbCommunicator = new AzureSqlDatabaseCommunicator(Context);
            var database       = dbCommunicator.Get(resourceGroupName, serverName, databaseName);

            Enum.TryParse(database.Edition, true, out Database.Model.DatabaseEdition edition);
            return(edition != Database.Model.DatabaseEdition.None &&
                   edition != Database.Model.DatabaseEdition.Free);
        }
 private bool IsDatabaseInServiceTierForPolicy(DatabaseAuditingPolicyModel model, string clientId)
 {
     AzureSqlDatabaseCommunicator dbCommunicator = new AzureSqlDatabaseCommunicator(Context);
     Management.Sql.Models.Database database = dbCommunicator.Get(model.ResourceGroupName, model.ServerName, model.DatabaseName, clientId);
     DatabaseEdition edition = DatabaseEdition.None;
     Enum.TryParse<DatabaseEdition>(database.Properties.Edition, true, out edition);
     if (edition == DatabaseEdition.Basic || edition == DatabaseEdition.Standard || edition == DatabaseEdition.Premium || edition == DatabaseEdition.DataWarehouse)
     {
         return true;
     }
     return false;
 }
Esempio n. 5
0
        private bool IsDatabaseInServiceTierForPolicy(string resourceGroupName, string serverName, string databaseName, string clientId)
        {
            var             dbCommunicator = new AzureSqlDatabaseCommunicator(Context);
            var             database       = dbCommunicator.Get(resourceGroupName, serverName, databaseName, clientId);
            DatabaseEdition edition;

            Enum.TryParse(database.Properties.Edition, true, out edition);
            if (edition != DatabaseEdition.None && edition != DatabaseEdition.Free)
            {
                return(true);
            }
            return(false);
        }
        internal void ValidateDatabaseInServiceTierForPolicy(string resourceGroupName, string serverName, string databaseName)
        {
            var dbCommunicator = new AzureSqlDatabaseCommunicator(Context);
            var database       = dbCommunicator.Get(resourceGroupName, serverName, databaseName);

            if (!Enum.TryParse(database.Edition, true, out Database.Model.DatabaseEdition edition))
            {
                throw new Exception(string.Format(CultureInfo.InvariantCulture,
                                                  Properties.Resources.UnsupportedDatabaseEditionForAuditingPolicy, database.Edition));
            }

            if (edition == Database.Model.DatabaseEdition.None || edition == Database.Model.DatabaseEdition.Free)
            {
                throw new Exception(Properties.Resources.DatabaseNotInServiceTierForAuditingPolicy);
            }
        }