SIQ® GQF Plugin`s WEB (Aplicações WEB) Gestão da Qualidade de

Transcrição

SIQ® GQF Plugin`s WEB (Aplicações WEB) Gestão da Qualidade de
SIQ® GQF Plugin’s WEB (Aplicações WEB)
Gestão da Qualidade de Fornecedores
Requerimentos do Software
Versão para Microsoft Windows/Unix
Dezembro 2006
Bem-Vindo ao to SIQ – GQF Plugin’s WEB - Gestão da Qualidade de Fornecedores, requerimento de
Software para Microsoft Windows/Unix. Este guia contém os seguintes tópicos:
Requerimentos
Servidor de Aplicação
Segurança
2 Requerimentos
2.1. Servidor de Aplicação JAVA
IMPORTANTE: Caso não possua os requisitos abaixo especificado, a SIQ
Systems, disponibiliza a solução de DataCenter com todos os recursos necessários
para hospedar aplicações WEB.
Para maiores informações, consulte a SIQ
Requerimentos
Sistema Operacional
Mínimo
•
•
•
•
Windows NT 4
Windows 2000
Linux/Unix
Windows XP
Recomendado
•
•
•
Windows 2003
Linux/Unix
Windows XP
Espaço em disco
400 Mb (Pequena
Variação +- 0.5 Mb Mês)
800 Mb (Pequena
Variação +- 0.5 Mb Mês)
JRE
1.5.0 >
1.5.0 >
Servidor WEB
IIS 5.0 ou Apache
IIS 5.0 ou Apache
Servidor de Aplicação*
TOMCAT 5.X
Desde que não utilizados
componentes Enterprise
Instance de 512 Mb
JBOSS AS 4.0.5 GA (Java
EE5)
Instance de 512 Mb
Bibliotecas
JDBC de conexão com o
Banco. Ex: Oracle é o
OJDBC14.jar
JDBC de conexão com o
Banco. Ex: Oracle é o
OJDBC14.jar
Firewall
Caso esteja usando
Servidor WEB, basta
liberar a porta deste
servidor e fazer o
direcionamento de
contexto.
Caso esteja usando
Servidor WEB, basta
liberar a porta deste
servidor e fazer o
direcionamento de
contexto.
*Outros Servidores de Aplicação compatíveis:
-
WebSphere
Oracle Application Server
GlassFish
BEA
- Sun Application Server
Tecnologia utilizada nas aplicações Web (Java).
- Java Server Faces
- Apache Trinidad
- Jboss RichFaces
- Facelets
- Hibernate
- JFreeChart
- Jasper Report (IReport)
- JUnit
- JMeter
- HTML
- J2EE
- JSP
- Servlets
- JDBC
- Spring
- JbossSeam
- JavaPersistence
- TestNG
3 Segurança
3.1. Segurança das Aplicações SIQ – Plugin’s WEB.
3.1.1 – Autenticação e Autorização de Usuários
•
Senha com mínimo de 8 caracteres
•
Tempo para Expiração da senha
•
Não permite re-utilizar as 12 últimas senhas
•
Expira a senha em caso de 3 tentativas de logins que falharem
•
Envio de usuário e senha para o usuário (Esqueci minha
senha)
•
Permite o usuário alterar sua senha
•
Definição e Aplicação de papéis para permissões do usuário
•
Definição e Aplicação de Fornecedor(es) que o usuário tem
permissão de visualização.
3.1.2 - Aspectos Tecnológicos
•
Encriptação de senha no servidor de Aplicação
Os arquivos de dataSource do (Ex. JBoss) são criptografados.
A senha é gerada e gravada em arquivo através de um
aplicativo Swing provido pela SIQ-Systems.
•
Rastreamento de operações no Banco de Dados
Todos comandos de persistência são gravados em tabela,
contendo o horário e o usuário logado que gerou a requisição
da operação.
•
Filtros web que garantem se o usuário esta realmente
autenticado a cada página.
•
Tempo limite para duração de sessões
•
Uso de Captcha (imagem no Login) que evita tentativas
automáticas de acesso.
•
Compatibilidade SSL (https)
•
Session hijacking.
O desenvolvimento web com a tecnologia JavaEE, provê um
gerador de sessions UID´s aleatório, bastante extenso e
composto por caracteres alfa-numéricos. Isso garante que ele não
seja classificado como "previsível". O uso de JavaServer Faces
(usado no projeto), faz com que tais UID´s (chamadas de
jsessionid), jamais sejam enviadas por métodos GETs, nas
urls, garantindo mais segurança. JSF trabalha via "POST".
•
Validação de Inputs de todas as entradas de dados são validadas
através de "validators" do Javaserver Faces.
•
Cross Site Scripting
Não existe no sistema desenvolvido, nenhum input passível de
geração Javascript. Entradas como por exemplo ">" são
substituídas pelo JavaServer Faces para ">".
•
SQL Injection
Para persistencia dos dados, utilizamos o padrão da Sun
JavaPersistence API (JPA). Com JPA, os parâmetros não são
concatenadados em uma String SQl e enviado ao Banco de Dados.
A consulta é pré-compilada e enviada para o banco, com os
parâmetros sendo setados préviamente por atribuição.
Ex: Consulta pré-compilada:
"select usuario.id from Usuario where usuario.nome = ?1"
Parâmetro String setado:
setParameter(1, "SIQ").