Configurando Arquivos de Política de Segurança do Java 2

Os usuários podem configurar arquivos de política de segurança do Java™ 2, de forma que a permissão necessária seja concedida para o aplicativo corporativo WebSphere Application Server especificado.

Antes de Iniciar

A segurança Java 2 utiliza vários arquivos de políticas para determinar as permissões para cada programa Java.

Consulte o tópico Arquivos de Política de Segurança Java 2 para obter a lista de arquivos de políticas disponíveiss que são suportados pelo WebSphere Application Server.

Dois tipos de arquivos de políticas são suportados pelo WebSphere Application Server: arquivos de políticas dinâmicas e arquivos de políticas estáticas. Os arquivos de políticas estáticas fornecem as permissões padrão. Os arquivos de políticas dinâmicas fornecem permissões de aplicativos. São fornecidos seis arquivos de políticas dinâmicas:
Tabela 1. Arquivos de Critério Dinâmicos. Esta tabela lista os arquivos de política dinâmica.
Nome do Arquivo de Políticas Descrição
app.policy Contém permissões padrão para todos os aplicativos corporativos da célula.
Nota: Atualizações no arquivo app.policy só se aplicam aos aplicativos corporativos no nó ao qual pertence o arquivo app.policy.
was.policy Contém permissões específicas do aplicativo para um aplicativo corporativo WebSphere Application Server. Esse arquivo é fornecido em um arquivo EAR (enterprise archive).
ra.xml Contém permissões específicas do aplicativo do conector para um aplicativo corporativo WebSphere Application Server. Esse arquivo é fornecido em um arquivo RAR (resource adapter archive).
spi.policy Contém permissões para a SPI (Service Provider Interface) ou para recursos de terceiros que são integrados no WebSphere Application Server. O conteúdo padrão concede tudo. Atualize esse arquivo cuidadosamente quando a célula precisar de mais proteção contra a SPI da célula. Este arquivo é aplicado a todas as SPIs definidas no arquivo resources.xml.
library.policy Contém permissões para a biblioteca compartilhada dos aplicativos corporativos.
filter.policy Contém uma lista de permissões que requerem a filtragem do arquivo was.policy e do arquivo app.policy na célula. Esse mecanismo de filtragem aplica-se somente aos arquivos was.policy e app.policy.
No WebSphere Application Server, os aplicativos devem ter as permissões de encadeamento adequadas, especificadas no arquivo was.policy ou app.policy. Sem as permissões de encadeamento especificadas, o aplicativo não poderá manipular os encadeamentos e o WebSphere Application Server criará uma exceção java.security.AccessControlException. O arquivo app.policy aplica-se a um nó especificado. Se você alterar as permissões em um arquivo app.policy, deverá incorporar a nova política de encadeamento no mesmo arquivo nos nós restantes. Além disso, se você incluir as permissões de encadeamento no arquivo app.policy, deverá reiniciar o WebSphere Application Server para forçar as novas permissões. Entretanto, se você incluir as permissões no arquivo was.policy de um aplicativo específico, não precisará reiniciar o WebSphere Application Server. Um administrador deve incluir o seguinte código em um arquivo was.policy ou app.policy para que um aplicativo manipule encadeamentos:
grant codeBase "file:${application}" {
  permission java.lang.RuntimePermission "stopThread";
  permission java.lang.RuntimePermission "modifyThread";
  permission java.lang.RuntimePermission "modifyThreadGroup";
};
Importante: A palavra-chave Signed By não é suportada nos seguintes arquivos de políticas: arquivos app.policy, spi.policy, library.policy, was.policy e filter.policy. No entanto, a palavra-chave Signed By é suportada nos seguintes arquivos de políticas: arquivos java.policy, server.policy e client.policy. O Java Authentication and Authorization Service (JAAS) não é suportado nos arquivos app.policy, spi.policy, library.policy, was.policy e filter.policy. Entretanto, a palavra-chave do proprietário do JAAS é suportada em um arquivo de políticas do JAAS quando ela é especificada pela propriedade de sistema da JVM (Java Virtual Machine) java.security.auth.policy. É possível configurar de forma estática os arquivos de políticas de autorização em java.security.auth.policy com auth.policy.url.n=URL, em que URL é o local da política de autorização.

Procedimento

  1. Identifique o arquivo de políticas a ser atualizado.
    Dica: Colete o arquivo de políticas com o menor escopo. É possível evitar conceder uma permissão adicional aos programas Java e proteger os recursos. Você pode atualizar o arquivo ra.xml ou o arquivo was.policy em vez do arquivo app.policy. Utilize símbolos específicos do componente ($(ejbcomponent), ${webComponent},${connectorComponent} e ${jars}) em vez de símbolos ${application}. Atualize os arquivos de política dinâmica, em vez dos arquivos de políticas estáticas.

    Inclua no arquivo filter.policy qualquer permissão que nunca tenha concedido ao aplicativo corporativo WebSphere Application Server na célula. Consulte filter.policy file permissions.

  2. Reinicie o aplicativo corporativo WebSphere Application Server.

Resultados

A permissão necessária é concedida para o aplicativo corporativo WebSphere Application Server especificado.
[AIX Solaris HP-UX Linux Windows][IBM i]

Exemplo

Se um aplicativo corporativo WebSphere Application Server em uma célula exigir permissões, será necessário atualizar alguns dos arquivos de políticas dinâmicas. O sintoma da permissão ausente é a exceção java.security.AccessControlException. A permissão ausente é listada nos dados de exceção a seguir, que aparecem como uma linha, mas são divididos em seções para que sejam legíveis.

[IBM i][z/OS]
java.security.AccessControlException: access denied (java.io.FilePermission 
${was.install.root}/java/ext/mail.jar read)

Quando um programa Java receber esta exceção e a inclusão desta permissão for justificada, inclua uma permissão em um arquivo de políticas dinâmicas adequado.

[IBM i][z/OS]
grant codeBase "file:user_client_installed_location" { 
  permission java.io.FilePermission 
"${was.install.root}$(/)java$(/)jre$(/)lib$(/)ext$(/)mail.jar", "read";
};

As linhas de informações de permissão anteriores são divididas para a ilustração. Digite a permissão em uma linha.

Para decidir se uma permissão deve ser incluída, consulte o tópico Exceção de Controle de Acesso para Segurança de Java 2.


Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_dynamic
Nome do arquivo: tsec_dynamic.html