internal static string ObterStringConexaoSegura() { string HostSeg = ConfigurationManager.AppSettings["HostSeg"]; string PortSeg = ConfigurationManager.AppSettings["PortSeg"]; string ServiceNameSeg = InstanciaBancoSeg; string usuarioBancoSeguranca = Configuration.SefazInfraSection.ObterConfiguracao().Dados.OracleBaseSeguranca.Usuario; string senhaBancoSeguranca = Configuration.SefazInfraSection.ObterConfiguracao().Dados.OracleBaseSeguranca.Senha; string usuariosenha = "password="******";user id=" + usuarioBancoSeguranca; string providerconexao = ";data source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" + HostSeg + ")(PORT=" + PortSeg + ")))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=" + ServiceNameSeg + ")));" + usuariosenha; OracleElement oracleElement = SefazInfraSection.ObterConfiguracao().Dados.Oracle; string minPoolsize = oracleElement.MinPoolSize.ToString(); string maxPoolsize = oracleElement.MaxPoolSize.ToString(); string lifetime = oracleElement.ConnectionLifeTime.ToString(); string timeout = oracleElement.ConnectionTimeout.ToString(); string incPoolsize = oracleElement.IncrPoolSize.ToString(); string decPoolsize = oracleElement.DecrPoolSize.ToString(); string pooling = oracleElement.Pooling.ToString(); string validateconection = oracleElement.ValidateConnection.ToString(); if (!string.IsNullOrEmpty(minPoolsize) & !string.IsNullOrEmpty(maxPoolsize) & !string.IsNullOrEmpty(lifetime) & !string.IsNullOrEmpty(timeout) & !string.IsNullOrEmpty(incPoolsize) & !string.IsNullOrEmpty(decPoolsize) & !string.IsNullOrEmpty(pooling) & !string.IsNullOrEmpty(validateconection)) { providerconexao += ";Min Pool Size=" + minPoolsize + ";"; providerconexao += "Connection Lifetime=" + lifetime + ";"; providerconexao += "Connection Timeout=" + timeout + ";"; providerconexao += "Incr Pool Size=" + incPoolsize + ";"; providerconexao += "Decr Pool Size=" + decPoolsize + ";"; providerconexao += "Pooling=" + pooling + ";"; providerconexao += "Validate Connection=" + validateconection + ";"; } return(providerconexao); }
private static string ObterStringConexao(string siglasistema, string usuario, string senha) { try { string login = LoginUsuario; OracleElement oracleElement = SefazInfraSection.ObterConfiguracao().Dados.Oracle; string minPoolsize = oracleElement.MinPoolSize.ToString(); string maxPoolsize = oracleElement.MaxPoolSize.ToString(); string lifetime = oracleElement.ConnectionLifeTime.ToString(); string timeout = oracleElement.ConnectionTimeout.ToString(); string incPoolsize = oracleElement.IncrPoolSize.ToString(); string decPoolsize = oracleElement.DecrPoolSize.ToString(); string pooling = oracleElement.Pooling.ToString(); string validateconection = oracleElement.ValidateConnection.ToString(); if (!siglasistema.Equals(CodigoSistemaCorrente)) { login = Sefaz.Infra.Configuration.SefazInfraSection.ObterConfiguracao().Geral.UsuarioSistema; } Entities db = new Entities(); GRUPO grupo = db.GRUPO.Where(g => g.SISTEMA.CDSISTEMA.Equals(siglasistema) & g.USUARIO.Where(u => u.DSLOGIN.Equals(login)).Any() & g.SISTEMA.DOMINIO.Where(d => d.CDDOMINIO.Equals(CodigoDominioCorrente)).Any()).ToList().FirstOrDefault(); if (grupo == null) { throw new Exception( "Não foi possível obter as credenciais de conexao para o banco de dados da aplicação para o sistema: " + siglasistema + " com o login: "******" no dominio: " + CodigoDominioCorrente + " e no ambiente: " + AmbienteSistemaSeguranca + ". Favor verificar as configurações de segurança."); } string usuariosenha = "password="******";user id=" + usuario; short IdInstancia = grupo.SISTEMA.INSTANCIAESQUEMABANCO.First().SQINSTANCIABANCO; INSTANCIABANCO instancia = db.INSTANCIABANCO.Where(i => i.SQINSTANCIABANCO == IdInstancia).ToList().FirstOrDefault(); string providerconexao = ";data source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" + instancia.HOST + ")(PORT=" + instancia.PORT + ")))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=" + instancia.SERVICENAME + ")));" + usuariosenha; if (!string.IsNullOrEmpty(minPoolsize) & !string.IsNullOrEmpty(maxPoolsize) & !string.IsNullOrEmpty(lifetime) & !string.IsNullOrEmpty(timeout) & !string.IsNullOrEmpty(incPoolsize) & !string.IsNullOrEmpty(decPoolsize) & !string.IsNullOrEmpty(pooling) & !string.IsNullOrEmpty(validateconection)) { providerconexao += ";Min Pool Size=" + minPoolsize + ";"; providerconexao += "Connection Lifetime=" + lifetime + ";"; providerconexao += "Connection Timeout=" + timeout + ";"; providerconexao += "Incr Pool Size=" + incPoolsize + ";"; providerconexao += "Decr Pool Size=" + decPoolsize + ";"; providerconexao += "Pooling=" + pooling + ";"; providerconexao += "Validate Connection=" + validateconection + ";"; } return(providerconexao); } catch (Exception ex) { throw ex; } }