Beispiel #1
0
		/// <summary>
		/// Gets the client with for the given DynamicDnsUpdaterClientType
		/// and initializes with the values in the Config file.  Default is DnsOMaticClient.
		/// </summary>
		/// <param name="clientType">The type of the dynamic dns client.</param>
		/// <returns>The dynamic dns Client.</returns>
		public static DynamicDnsClientBase GetClient(DynamicDnsUpdaterClientType clientType)
		{
			switch(clientType)
			{
				case DynamicDnsUpdaterClientType.Route53:
					return new Route53Client();
				case DynamicDnsUpdaterClientType.Dnsimple:
					if(!string.IsNullOrWhiteSpace(Config.DnsimpleApiToken))
						return new DnsimpleClient(Config.DnsimpleUsername, new ApiToken(Config.DnsimpleApiToken));
					else
						return new DnsimpleClient();
				default: 
					return new DnsOMaticClient();
			}
		}
 /// <summary>
 /// Gets the client with for the given DynamicDnsUpdaterClientType
 /// and initializes with the values in the Config file.  Default is DnsOMaticClient.
 /// </summary>
 /// <param name="clientType">The type of the dynamic dns client.</param>
 /// <returns>The dynamic dns Client.</returns>
 public static DynamicDnsClientBase GetClient(DynamicDnsUpdaterClientType clientType)
 {
     switch(clientType)
     {
         case DynamicDnsUpdaterClientType.Route53:
             return new Route53Client();
         case DynamicDnsUpdaterClientType.Dnsimple:
             if(!string.IsNullOrWhiteSpace(Config.DnsimpleApiToken))
                 return new DnsimpleClient(Config.DnsimpleUsername, new ApiToken(Config.DnsimpleApiToken));
             else
                 return new DnsimpleClient();
         default:
             return new DnsOMaticClient();
     }
 }
Beispiel #3
0
        private static void SetAccessKeyId(Session session, Configuration config, DynamicDnsUpdaterClientType dnsClientType)
        {
            switch (dnsClientType)
            {
            case DynamicDnsUpdaterClientType.Route53:
                string accessKeyId = session.CustomActionData["ACCESSKEYID"];
                if (!string.IsNullOrWhiteSpace(accessKeyId))
                {
                    config.AppSettings.Settings.Remove("AwsAccessKeyId");
                    config.AppSettings.Settings.Add("AwsAccessKeyId", accessKeyId);
                }
                break;

            default:
                break;
            }
        }
Beispiel #4
0
        private static void SetPassword(Session session, Configuration config, DynamicDnsUpdaterClientType dnsClientType)
        {
            string dnsClientPassword = session.CustomActionData["DNSCLIENTPASSWORD"];

            if (!string.IsNullOrWhiteSpace(dnsClientPassword))
            {
                bool encryptionEnabled = Convert.ToBoolean(config.AppSettings.Settings["EncryptionEnabled"].Value);

                string password = string.Empty;

                if (encryptionEnabled)
                {
                    var encryptionService = new EncryptionService(Convert.FromBase64String(Common.Constants.EncryptionKey),
                                                                  Convert.FromBase64String(Common.Constants.InitializationVector));
                    password = encryptionService.EncryptToBase64String(dnsClientPassword);
                }
                else
                {
                    password = dnsClientPassword;
                }

                switch (dnsClientType)
                {
                case DynamicDnsUpdaterClientType.DnsOMatic:
                    config.AppSettings.Settings.Remove("DnsOMaticPassword");
                    config.AppSettings.Settings.Add("DnsOMaticPassword", password);
                    break;

                case DynamicDnsUpdaterClientType.Dnsimple:
                    config.AppSettings.Settings.Remove("DnsimplePassword");
                    config.AppSettings.Settings.Add("DnsimplePassword", password);
                    break;

                default:
                    break;
                }
            }
        }
Beispiel #5
0
        private static void SetUsername(Session session, DynamicDnsUpdaterClientType dnsClientType, Configuration config)
        {
            string dnsClientUsername = session.CustomActionData["DNSCLIENTUSERNAME"];

            if (!string.IsNullOrWhiteSpace(dnsClientUsername))
            {
                switch (dnsClientType)
                {
                case DynamicDnsUpdaterClientType.DnsOMatic:
                    config.AppSettings.Settings.Remove("DnsOMaticUsername");
                    config.AppSettings.Settings.Add("DnsOMaticUsername", dnsClientUsername);
                    break;

                case DynamicDnsUpdaterClientType.Dnsimple:
                    config.AppSettings.Settings.Remove("DnsimpleUsername");
                    config.AppSettings.Settings.Add("DnsimpleUsername", dnsClientUsername);
                    break;

                default:
                    break;
                }
            }
        }
Beispiel #6
0
		public BespokeUpdater(DynamicDnsUpdaterClientType clientType)
			: this(GetClient(clientType))
		{
		}
Beispiel #7
0
        private static void SetSecretAccessKey(Session session, Configuration config, DynamicDnsUpdaterClientType dnsClientType)
        {
            switch (dnsClientType)
            {
            case DynamicDnsUpdaterClientType.Route53:
                string secretAccessKey = session.CustomActionData["SECRETACCESSKEY"];
                if (!string.IsNullOrWhiteSpace(secretAccessKey))
                {
                    bool encryptionEnabled = Convert.ToBoolean(config.AppSettings.Settings["EncryptionEnabled"].Value);

                    if (encryptionEnabled)
                    {
                        var encryptionService = new EncryptionService(Convert.FromBase64String(Constants.EncryptionKey), Convert.FromBase64String(Constants.InitializationVector));
                        secretAccessKey = encryptionService.EncryptToBase64String(secretAccessKey);
                    }

                    config.AppSettings.Settings.Remove("AwsSecretAccessKey");
                    config.AppSettings.Settings.Add("AwsSecretAccessKey", secretAccessKey);
                }
                break;

            default:
                break;
            }
        }
 public BespokeUpdater(DynamicDnsUpdaterClientType clientType)
     : this(GetClient(clientType))
 {
 }
 private static void SetAccessKeyId(Session session, Configuration config, DynamicDnsUpdaterClientType dnsClientType)
 {
     switch (dnsClientType)
     {
         case DynamicDnsUpdaterClientType.Route53:
             string accessKeyId = session.CustomActionData["ACCESSKEYID"];
             if (!string.IsNullOrWhiteSpace(accessKeyId))
             {
                 config.AppSettings.Settings.Remove("AwsAccessKeyId");
                 config.AppSettings.Settings.Add("AwsAccessKeyId", accessKeyId);
             }
             break;
         default:
             break;
     }
 }
 private static void SetUsername(Session session, DynamicDnsUpdaterClientType dnsClientType, Configuration config)
 {
     string dnsClientUsername = session.CustomActionData["DNSCLIENTUSERNAME"];
     if (!string.IsNullOrWhiteSpace(dnsClientUsername))
     {
         switch (dnsClientType)
         {
             case DynamicDnsUpdaterClientType.DnsOMatic:
                 config.AppSettings.Settings.Remove("DnsOMaticUsername");
                 config.AppSettings.Settings.Add("DnsOMaticUsername", dnsClientUsername);
                 break;
             case DynamicDnsUpdaterClientType.Dnsimple:
                 config.AppSettings.Settings.Remove("DnsimpleUsername");
                 config.AppSettings.Settings.Add("DnsimpleUsername", dnsClientUsername);
                 break;
             default:
                 break;
         }
     }
 }
        private static void SetSecretAccessKey(Session session, Configuration config, DynamicDnsUpdaterClientType dnsClientType)
        {
            switch (dnsClientType)
            {
                case DynamicDnsUpdaterClientType.Route53:
                    string secretAccessKey = session.CustomActionData["SECRETACCESSKEY"];
                    if (!string.IsNullOrWhiteSpace(secretAccessKey))
                    {
                        bool encryptionEnabled = Convert.ToBoolean(config.AppSettings.Settings["EncryptionEnabled"].Value);

                        if (encryptionEnabled)
                        {
                            var encryptionService = new EncryptionService(Convert.FromBase64String(Constants.EncryptionKey), Convert.FromBase64String(Constants.InitializationVector));
                            secretAccessKey = encryptionService.EncryptToBase64String(secretAccessKey);
                        }

                        config.AppSettings.Settings.Remove("AwsSecretAccessKey");
                        config.AppSettings.Settings.Add("AwsSecretAccessKey", secretAccessKey);
                    }
                    break;
                default:
                    break;
            }
        }
        private static void SetPassword(Session session, Configuration config, DynamicDnsUpdaterClientType dnsClientType)
        {
            string dnsClientPassword = session.CustomActionData["DNSCLIENTPASSWORD"];
            if (!string.IsNullOrWhiteSpace(dnsClientPassword))
            {
                bool encryptionEnabled = Convert.ToBoolean(config.AppSettings.Settings["EncryptionEnabled"].Value);

                string password = string.Empty;

                if (encryptionEnabled)
                {
                    var encryptionService = new EncryptionService(Convert.FromBase64String(Common.Constants.EncryptionKey),
                                                                  Convert.FromBase64String(Common.Constants.InitializationVector));
                    password = encryptionService.EncryptToBase64String(dnsClientPassword);
                }
                else
                {
                    password = dnsClientPassword;
                }

                switch (dnsClientType)
                {
                    case DynamicDnsUpdaterClientType.DnsOMatic:
                        config.AppSettings.Settings.Remove("DnsOMaticPassword");
                        config.AppSettings.Settings.Add("DnsOMaticPassword", password);
                        break;
                    case DynamicDnsUpdaterClientType.Dnsimple:
                        config.AppSettings.Settings.Remove("DnsimplePassword");
                        config.AppSettings.Settings.Add("DnsimplePassword", password);
                        break;
                    default:
                        break;
                }
            }
        }