public bool LicencaEhValida(out string strLicensa, out DateTime dteValidade) { bool blnValidaLicenca = false; Licenca l = new Licenca(); List <ItemDaLicenca> lista = new List <ItemDaLicenca>(); List <ModuloSistema> listaMS = new List <ModuloSistema>(); clsHash clsh = new clsHash(SHA512.Create()); string strChaveAutenticada = ""; string strMarcados = ""; dteValidade = DateTime.Today; strLicensa = ""; l = PesquisarLicenca(0); if (l != null) { strLicensa = l.CodigoDoCliente.ToString() + " - " + l.NomeDoCliente; lista = PesquisarItemLicenca(l.CodigoDaLicenca); foreach (var itm in lista) { if (itm.DataDeValidade >= Convert.ToDateTime(DateTime.Now.ToString("dd/MM/yyyy 00:00:00"))) { listaMS = ListarModulosSistemaPelaLicenca(itm.CodigoDoItem); foreach (ModuloSistema itm2 in listaMS) { if (itm2.Liberar == true) { if (strMarcados.Equals("")) { strMarcados = itm2.CodigoModulo.ToString(); } else { strMarcados = strMarcados + ", " + itm2.CodigoModulo.ToString(); } } } strChaveAutenticada = clsh.CriptografarSenha(l.CodigoDaLicenca.ToString() + itm.Guid.ToLower() + strMarcados); if (strChaveAutenticada == itm.ChaveDeAutenticacao) { dteValidade = itm.DataDeValidade; blnValidaLicenca = true; } } } } return(blnValidaLicenca); }
public Usuario PesquisarLogin(string Login, string Senha, out Boolean LoginOK) { LoginOK = false; try { AbrirConexao(); strSQL = "Select * from [Usuario] Where LOGIN = @v1"; Cmd = new SqlCommand(strSQL, Con); Cmd.Parameters.AddWithValue("@v1", Login); Dr = Cmd.ExecuteReader(); Usuario p = new Usuario(); if (Dr.Read()) { p = new Usuario(); p.CodigoUsuario = Convert.ToInt32(Dr["CD_Usuario"]); p.NomeUsuario = Convert.ToString(Dr["NM_COMPLETO"]); p.Login = Convert.ToString(Dr["LOGIN"]); p.Senha = Convert.ToString(Dr["SENHA"]); p.GUID = Convert.ToString(Dr["TX_GUID"]); p.CodigoPerfil = Convert.ToInt32(Dr["CD_PFL_Usuario"]); p.CodigoSituacao = Convert.ToInt32(Dr["CD_SITUACAO"]); p.CodigoPessoa = Convert.ToInt32(Dr["CD_PESSOA"]); p.ResetarSenha = Convert.ToString(Dr["PW_RESET"]); p.CodigoCargo = Convert.ToInt32(Dr["CD_CARGO"]); } clsHash clsh = new clsHash(SHA512.Create()); string strTesteSenha = clsh.CriptografarSenha(Senha); if (p != null) { if (p.Senha == strTesteSenha) { LoginOK = true; } } return(p); } catch (Exception ex) { throw new Exception("Erro ao Pesquisar Usuario: " + ex.Message.ToString()); } finally { FecharConexao(); } }
public void InserirLicenca(ItemDaLicenca p, string strMarcados) { Guid g; // Create and display the value of two GUIDs. g = Guid.NewGuid(); try { AbrirConexao(); Cmd = new SqlCommand("insert into LICENCA_DE_USO_ITEM (CD_LICENCA, DT_VALIDADE, CH_AUTENTICACAO, TX_GUID) values (@v1,@v2,@v3,@v4); SELECT SCOPE_IDENTITY()", Con); Cmd.Parameters.AddWithValue("@v1", p.CodigoDaLicenca); Cmd.Parameters.AddWithValue("@v2", p.DataDeValidade); Cmd.Parameters.AddWithValue("@v4", g); clsHash clsh = new clsHash(SHA512.Create()); string teste = clsh.CriptografarSenha(p.CodigoDaLicenca.ToString() + g + strMarcados); Cmd.Parameters.AddWithValue("@v3", teste); // Cmd.ExecuteNonQuery(); p.CodigoDoItem = Convert.ToInt64(Cmd.ExecuteScalar()); } catch (SqlException ex) { if (ex.Errors.Count > 0) // Assume the interesting stuff is in the first error { switch (ex.Errors[0].Number) { case 2601: // Primary key violation throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex); case 2627: // Primary key violation throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex); default: throw new Exception("Erro ao gravar Item da Licença: " + ex.Message.ToString()); } } } catch (Exception ex) { throw new Exception("Erro ao gravar Licença: " + ex.Message.ToString()); } finally { FecharConexao(); } }