...
PRÓS | CONTRAS |
---|
- Fácil interação
- Capacidade de armazenamento maior 5-10MB
| - Possível inviabilidade devido a cross domain
- Abertura de uma nova URL é considerada outra sessão, portanto os dados não são repassados
Aviso |
---|
| Devido a característica do DSS, onde os serviços serão distribuídos em diversas portas, esta opção se torna inviável para utilização. |
|
localStorage
PRÓS | CONTRAS |
---|
- Fácil interação
- Capacidade de armazenamento em 5MB.
| - Necessidade de gerenciar um cross domain pois o storage é disponível por host e porta
- Opções de visibilidade com o uso de Iframes
- Sincronização de eventos (abertura da tela com set da localStorage em cada projeto para receber o parametro)
Informações |
---|
| Com o uso de Iframes, é possível seguir o conceito de compartilhamento dos dados conforme diagrama abaixo: Image Modified Foram realizados POCs para verificar a visibilidade da informação do token na localStorage, sendo seus resultados apresentados a seguir: Situação 1: Login web e front-end com o mesmo domínio (com portas diferentes), onde o endereço localhost:4200 (login web) e localhost:4400 (front-end). Image Modified
Situação 2: Login web e front-end com domínios e portas diferentes, onde o endereço localhost:4200 (login web) e 172.16.42.7:4400 (front-end). Nesta situação, devido a questões de segurança não foi possível compartilhar as informações do localStorage. Image Modified
Situação 3: Login web como main-domain e front-end como sub-domain e portas diferentes, onde o endereço dss.com:4200 (login web) e menu.dss.com:4400 (front-end). Image Modified |
|
Cookies
PRÓS | CONTRAS |
---|
- Alinhado com futuras entregas do Identity
- Visibilidade entre domínios
- Configurações de visibilidade de acordo com regras de segurança dos próprios cookies
| - Limitação em 4KB
- Possivel implementação de um cookie opaco
- Pode ter uma lentidão para regatar o valor do cookie
Informações |
---|
| Foram realizados POCs para verificar a visibilidade da informação no cookie, sendo seus resultados apresentados a seguir: Situação 1: Login web e front-end com o mesmo domínio (com portas diferentes), onde o endereço localhost:4200 (login web) e localhost:4400 (front-end). Image Modified
Situação 2: Login web e front-end com domínios e portas diferentes, onde o endereço localhost:4200 (login web) e 172.16.42.7:4400 (front-end). Nesta situação, devido a questões de segurança não foi possível compartilhar as informações do cookie. Image Modified Nota |
---|
| Para este tipo de situação, teoricamente uma alternativa seria parametrizar o atributo SameSite='None', porém para isso é obrigatório que o Cookie possua também o parâmetro Secure=true, o que pode impactar na obrigação de instalar todos os serviços do DSS com o protocolo HTTPS. |
Situação 3: Login web como main-domain e front-end como sub-domain e portas diferentes, onde o endereço dss.com:4200 (login web) e menu.dss.com:4400 (front-end). Image Modified |
|
05. ANEXOS
RFC000032 - Autenticação Aplicações On-Premises (RASCUNHO)
...