Restringir o uso do servidor para uso interno

Eu tenho um serviço web REST usando o Spring MVC, que é voltado para o exterior. Gostaria de restringir o acesso a algumas chamadas REST para uso de administrador e para outros servidores na mesma rede interna.

Até agora, posso pensar nas seguintes soluções:

  1. Use o Spring-Security para restringir um mapeamento a uma sub-rede usando o acesso "hasIpAddress"
  2. Separe as chamadas REST confidenciais em seu próprio controlador e escreva um corte de ponto AOP que leia HttpServletRequest para o endereço IP e verifique com uma lista de permissões

Não gosto de nenhuma das soluções. (1) não me dá flexibilidade suficiente, posso estar em várias sub-redes e talvez queira abrir apenas um intervalo de IP. (2) Dá-me quase exatamente o que eu quero, mas parece hacky, deve haver uma maneira melhor de fazer isso.

Resposta 1

A maneira como eu resolvi esse problema foi ter um logon de usuário e armazenar seu ID de logon na sessão. Em seguida, a cada tipo em que uma nova solicitação entra, você verifica as credenciais do usuário para garantir que elas tenham autoridade para executar essa função e ainda estejam logadas.

Resposta: 2

Eu criei um analisador XML que contém uma exibição de detalhes. Estou lendo em um feed RSS que contém uma tag de gabinete. Estou tentando obter o URL do arquivo de vídeo da etiqueta do gabinete. Isto é ...

1ª fase Tenho um problema ao desligar minha instância do JBoss em execução no Eclipse desde que alterei a porta JNDI do JBoss. Claro que posso desligá-lo da visualização do console, mas não com a parada ...

Eu tenho um modelo string str = "Olá% s, seu nome é% s,% s nasceu em 1990." Quero formatar esta string, como abaixo: Olá Sr.P, seu nome é Sr.P, o Sr.P nasceu em 1990. Eu posso fazer o seguinte ...

Ao executar um aplicativo Java Swing no Opensuse, o nome da classe principal (com-simontuffs-onejar-Boot) aparece na parte superior da tela. Como faço para definir esse como o título que eu quero? Informação da versão: /...