Você está na página 1de 24

UMA SOLUÇÃO PARA UM SERVIÇO MULTI-TENANCY

DE AUTENTICAÇÃO, AUTORIZAÇÃO E CONTROLE DE


ACESSO DE USUÁRIOS

José Barbosa da Silva Neto

Orientador:
Vinicius Cardoso Garcia

1
Roteiro
• Introdução
• Objetivos
• Computação em Nuvem
• Níveis de maturidade
• Arquitetura multi-tenancy
• Isolamento de dados
• Segurança
• Resultados obtidos
• Limitações
• Conclusão
• Trabalhos futuros

2
Motivação

Entendimento da arquitetura multi-tenancy para a criação de


um serviço de autenticação, autorização e controle de acesso.

3
Objetivos

• Realizar um estudo sobre a arquitetura


multi-tenancy.
• Investigar estratégias para a segurança e
isolamento dos dados na arquitetura
adotada.
• Propor uma solução para o
gerenciamento de autenticação,
autorização e acesso de usuários para a
arquitetura adotada.

4
Computação em Nuvem

5
Computação em Nuvem

Define-se como um modelo ubíquo, conveniente para


acesso de recursos computacionais configuráveis que
podem ser providos e entregues com o menor esforço
possível. - (Instituto Nacional de Padrões e Tecnologia,
2018)

➢ SaaS - Software as a Service


➢ Redução de custos
➢ Escalabilidade

6
Níveis de maturidade

1. Ad Hoc ou Custom

2. Configurable

3. Configurable e
Multi-Tenant-Efficient

4. Scalable, Configurable e
Multi-Tenant-Efficient

FONTE: F. CHONG, G. CARRARO. Architecture Strategies for Catching the Long Tail.

7
Arquitetura Multi-tenancy

8
Arquitetura Multi-tenancy
➢ Isolamento de dados
▪ Base única
• Esquemas
• Prefixos
• Coluna
▪ Base separadas

FONTE: Architecture strategies and data models of Software as a Service: A review

9
Arquitetura Multi-tenancy

➢ Segurança
▪ Autenticação
• JWT - RFC 7519
▪ Controle de Acesso
• Grupos e acessos de usuários

10
Resultados obtidos

11
Autenticação

12
Autenticação

13
Criação de um novo cliente

14
Criação de um novo cliente

15
Criação de um novo cliente

16
Autenticação de um novo cliente

17
Limitações

18
Limitações

➢ Aprimorar o formato de controle de


acesso.
➢ Implementar a descentralização do banco
de dados administrador.

19
Conclusão

20
Conclusão

• Estudo da arquitetura multi-tenancy


• Análise de estratégias para
isolamento dos dados
• Adoção de padrões de segurança
• Construção da solução para o

gerenciamento de autenticação,
autorização e controle de acesso.

21
Trabalhos futuros

22
Trabalhos Futuros

➢ Criação de testes para análise de


performance e escalabilidade.
➢ Implementação deste serviço em
linguagens diferentes como Django,
Spring e entre outros frameworks.
➢ Adição de outros padrões de segurança
para autenticação e autorização.

23
Dúvidas

?
24

Você também pode gostar