Autenticação da API REST com SAML
Eu estou lutando para projetar uma autenticação SAML2.0 para uma API REST usando um gateway. REST é usado entre meu backend e meu aplicativo. Estou usando o filtro Java Servlet e Spring.
Eu vejo duas possibilidades:
Adicionando os tokens SAML ao cabeçalho a cada vez.
Autentique uma vez com o SAML e, em seguida, use uma sessão ou similar (conversa segura) entre o cliente e o gateway.
Caso 1: É uma boa solução porque ainda somos RESTful, mas:
Os tokens SAML são muito grandes. Isso pode gerar problemas devido ao tamanho grande do cabeçalho.Repetir tokens não é a melhor maneira de se preocupar com a segurança.Caso 2: Não é mais stateless e eu tenho que gerenciar um link com o cliente. Como eu uso um gateway, os serviços subjacentes ainda podem ser RESTful.
O caso 2 busca a melhor escolha, apesar de não seguir as restrições de descanso.
Alguém já teve que fazer isso e me deu algumas indicações (para projeto ou implementação)?
Existe uma maneira melhor de fazer isso com o SAML?
Qualquer ajuda ou conselho são bem-vindos.