A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Ultimos recursos Jobson Ronan

Apresentações semelhantes


Apresentação em tema: "Ultimos recursos Jobson Ronan"— Transcrição da apresentação:

1 Ultimos recursos Jobson Ronan {jrjs@cin.ufpe.br}

2 Objetivos Visão (ultra)geral do JNDI Visão geral de mecanismos J2EE de segurança Integração Struts-Hibernate? Aplicação exemplo

3 JNDI O que é?  Uma especificação para um servidor de nomes em java. Como assim?  Um repositórios de recursos acesiveis por nome

4 Configurando O Tomcat 5 fornece uma implementação do JNDI InitialContext para cada aplicação web implantada  Esta pode ser acessada da meneira padrão especificada pelo J2EE  O padrão J2EE fornece um conjunto de elementdos (tags) padrões no WEB-INF/web.xml para indicar recursos referênciados. Os recursos referênciados nestes elementos devem ser definidos em configurações específicas do servidor

5 Usando com o Tomcat Adiquirindo o contexto JNDI (ex:) // Obtain our environment naming context Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); // Look up our data source DataSource ds = (DataSource) envCtx.lookup("jdbc/EmployeeDB"); // Allocate and use a connection from the pool Connection conn = ds.getConnection();... use this connection to access the database... conn.close();

6 Recursos de segurança A especificação Servlet 2.3 permite a configuração de segurança em dois domínios  Autenticação: o processo de verificação da identidade do usuário que solicita um recurso - quem é?  Autorização: processo de verificação das permissões que um usuário autenticado possui - o que ele pode fazer? Os dois recursos podem ser configurados para cada contexto no web.xml definindo  Login Configuration: configuração de métodos de autenticação utilizados  Security Roles: perfis de usuário para autorização  Security Constraint: URLs e métodos de acesso permitidos e perfis de segurança necessários para acessá-los

7 Configuração de Login Escolha uma dentre quatro técnicas de autenticação  BASIC: mostra uma janela do browser que recebe nome e senha. Os dados são enviados em conexão insegura  FORM: igual a BASIC mas em vez de usar uma janela do browser, pemite o uso de um formulário HTML  DIGEST: usa criptografia fraca para enviar os dados  CLIENT-CERT: requer certificado X-509 para funcionar e usa criptografia forte (128-bit) BASIC, FORM e DIGEST são seguros se usados com SSL

8 Autorização: perfis de usuário Uma vez definida a forma de autenticação, é preciso definir perfis de usuário habilitados a acessar os recursos A declaração de perfis de usuários é feita no web.xml usando. A associação desses perfis com usuários reais é dependente de servidor

9 Associação de perfis com usuário no Tomcat Para definir domínios de segurança no Tomcat veja a documentação do servidor sobre security realms: http://localhost:8080/tomcat-docs/realm-howto.html  Há diferentes níveis diferentes de configuração. Um grava os dados em banco relacional (JDBC Realm e DataSource Realm), outro em LDAP via JNDI (JNDI Realm), mais o JAAS Realm, e o mais simples usa um par de arquivos (Memory Realm) Para usar Memory Realm, localize o arquivo tomcatusers.xml no diretório conf/ em $TOMCAT_HOME e acrescente os usuários, senhas e perfis desejados

10 Web-Resource Collection A coleção de recursos Web protegidos e os métodos de acesso que podem ser usados para acessá-los é definido em um bloco definido dentro de  Inclui URL-patterns que indicam quais os mapeamentos que abrangem a coleção  Inclui um para cada método permitido

11 Security Constraint O Web Resource Collection faz parte do Security Constraint que associa perfis de usuário (papéis lógicos) à coleção

12 Form-based Login Para autenticação por formulário, é preciso definir no FORM como Adicionalmente, é informada a página que implementa o formulário. Esta página deve conter um elemento HTML com algumas restrições  Atributo ACTION de deve conter: j_security_check  Campo do nome deve conter: j_username  Campo da senha deve conter: j_password

13 Ativando SSL no Tomcat Em dois passos  Criar um Certificate Keystore: > %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA especificando o password para “changeit”  Descomentar a entrada “SSL HTTP/1.1 Connector” no arquivo de configuração em $CATALINA_HOME/conf/server.xml Acessos seguros são realizados por chamadas a links precedidos por https Pode ser ativado como requerido em um sercurity-constraint CONFIDENTIAL

14 Integração Struts-Hibernate Um único Desafios/Decisão  Como obter o Session factory? Métodos estáticos Durante Inicialização do Contexto...alguma outra?  Ver aplicação exemplo!

15 Ultimos recursos Jobson Ronan {jrjs@cin.ufpe.br}


Carregar ppt "Ultimos recursos Jobson Ronan"

Apresentações semelhantes


Anúncios Google