O GeoServer tem a capacidade de criar várias contas de usuário. Esses usuários podem ter acesso a qualquer funcionalidade, a partir da capacidade de editar os metadados de um workspace para a visualização de um documento de Capabilities.

Por padrão, o GeoServer vem com dois usuários:

• Uma conta administrativa (admin): Esta conta tem a capacidade de ler ou escrever qualquer coisa no GeoServer.
• Uma conta root: Esta é uma conta de administrador de “último recurso” que deve apenas ser usada para fins de recuperação de desastres. Esta conta não pode ser desativada ou modificada.

Além dos usuários nomeados acima, muitas funções estão disponíveis através de acesso anônimo. Funções permitidas de forma anônima por padrão incluem a visualização de documentos GetCapabilities, execução de solicitações GetFeature e GetMap, e uso da página de demonstração Request Builder.

1. Cenário multiusuário

Este tutorial vai implementar o seguinte cenário básico de segurança:

• A maioria dos dados é informação pública, ou seja, qualquer pessoa deve ser capaz de visualizar as imagens do mapa.
• Algumas camadas contêm informações privadas, de modo que a visualização de imagens deve ser bloqueada, com exceção daqueles que devem possuir acesso a esta informação.
• Apenas algumas pessoas devem ser capazes de editar as camadas públicas
• Aqueles que podem editar as camadas públicas devem ser os únicos usuários capazes de baixar os dados.
• Algumas outras pessoas devem ser capaz de editar as camadas não-públicas
• Por motivos de segurança e de largura de banda, você quer impedir a execução de requisições WPS para todos os usuários, exceto para o administrador.
• Acesso REST deve ser habilitado somente para o administrador.

Com base neste cenário, três contas terão de ser criadas:

public_editor – Esta conta será capaz de editar a dados públicos
private_viewer – Esta conta será capaz de visualizar os dados privados
private_editor – Esta conta será capaz de editar os dados privados

2. Configurando catálogo

As camadas públicas como acima definidas estarão em um workspace chamado public, e as camadas privadas estarão em um workspace chamado private.

3. Criando papéis

Tendo identificado o cenário e determinado que as contas precisam ser criadas, o próximo passo é criar os papéis (roles). Com base nas três contas identificados, os papéis a serem criados serão chamados ROLE_EDIT, ROLE_PRIVATE, e ROLE_PRIVATEEDIT.

Esta configuração deve ser feita através da interface administração do GeoServer (web).

3.1. Abra a interface web GeoServer e efetue login com a conta de administrador (admin).

3.2. Clique em Users, Groups, Roles no menu Security na coluna no lado esquerdo da página.

3.3. Em Role Service, clique no item default.

3.4. Clique na guia Roles.

3.5. A lista atual de funções será exibida. Clique Adicionar novo papel (role).

3.6. Digite ROLE_PRIVATE no campo Nome e clique em Salvar.

3.7. Repita o processo, adicionando mais dois papéis, ROLE_EDIT e ROLE_PRIVATEEDIT.

No próximo post falaremos sobre a criação dos usuários. Não Perca!