Um modelo pragm - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Um modelo pragm

Description:

Um modelo pragm tico de separa o de responsabilidades para o controle de acesso baseado em pap is Bruno C sar Barreto de Figueir do PPGI UFPB / Unimed ... – PowerPoint PPT presentation

Number of Views:84
Avg rating:3.0/5.0
Slides: 23
Provided by: brun1182
Category:
Tags: modelo | numa | pragm

less

Transcript and Presenter's Notes

Title: Um modelo pragm


1
Um modelo pragmático de separação de
responsabilidades para o controle de acesso
baseado em papéis
  • Bruno César Barreto de Figueirêdo
  • PPGI UFPB / Unimed João Pessoa
    bruno_at_unimedjp.com.br
  • Gustavo Henrique Matos Bezerra Motta
  • PPGI UFPB gustavo_at_di.ufpb.br

2
Conceitos Necessários
  • Tomaremos um cenário bem familiar a todos como
    exemplo, para tornar clara a motivação e os
    resultados pretendidos com nosso trabalho

3
Conceitos Necessários
  • Modelo de controle de acesso baseado em papéis
    (CABP)

Usuários
Papéis
Goleiro
Atacante
Permissões
Fazer Gols
Defender
4
Conceitos Necessários
  • Conflito de Interesses Separação de
    Responsabilidades

Defender
Fazer Gols
5
Conceitos Necessários
  • Como implementar a separação de responsabilidades
    quando o mesmo usuário assume funções
    conflitantes ?

Defender
Fazer Gols
6
Conceitos Necessários
7
Conceitos Necessários
  • Modelo de controle de acesso baseado em papéis
    (CABP)
  • Separação de Responsabilidades Estática
  • Usuários não poderão estar associados a papéis
    que contenham permissões de acesso com conflitos
    de interesses entre si. Logo, um usuário que seja
    goleiro, não poderá estar associado ao papel
    atacante, visto que as permissões defender e
    fazer gols, estão associadas a esses papéis e
    contêm um conflito de interesses entre si.
  • Tomando o modelo, temos SRE
    (goleiro,atacante,2).

8
Conceitos Necessários
  • Modelo de controle de acesso baseado em papéis
    (CABP)
  • Separação de Responsabilidades Estática

Usuários
Papéis
Goleiro
Atacante
Permissões
Fazer Gols
Defender
9
Conceitos Necessários
  • Modelo de controle de acesso baseado em papéis
    (CABP)
  • Separação de Responsabilidades Dinâmica
  • Usuários poderão estar associados a papéis que
    contenham conflitos de interesses entre si, porém
    os mesmos papéis não poderão estar ativos
    simultaneamente. Logo, caso um goleiro queira
    fazer gols, terá de sair de campo e entrar
    novamente como um atacante, e então fazer gols.
    Caso o mesmo deseje voltar a defender, deverá
    sair outra vez de campo e entrar mais uma vez
    como goleiro.
  • Tomando o modelo, temos SRD
    (goleiro,atacante,2).

10
Conceitos Necessários
  • Modelo de controle de acesso baseado em papéis
    (CABP)
  • Separação de Responsabilidades Dinâmica

Usuários
Papéis
Goleiro
Atacante
Permissões
Fazer Gols
Defender
11
Motivação para o Trabalho
  • Concluímos que o Modelo de controle de acesso
    baseado em papéis (CABP), afasta-se da realidade
    do dia-a-dia, quando trata da separação de
    responsabilidades.
  • As soluções encontradas hoje em dia ficam
    dependentes da aplicação e não do controle do
    acesso, o que traz problemas de segurança,
    padronização, etc.

12
Proposta de Trabalho
  • Formatar um modelo de controle de separação de
    responsabilidades mais poderoso e flexível, de
    forma a permitir que esse controle fique centrado
    no mecanismo de controle do acesso e não nas
    aplicações.

13
Modelo PRAGMA SR
  • Extensão do CABP
  • Associação de permissões a papéis e de papéis a
    usuários, sem restrições
  • Configuração de todas as operações conflitantes
    para que o modelo possa controlar o seu acesso

14
Modelo PRAGMA SR
  • Controla o acesso às operações em tempo de
    execução, restringindo que o mesmo usuário acesse
    uma permissão que tenha um conflito de interesses
    com outra disponível para ele, independente do
    papel que contenha a mesma.
  • Controle do histórico do acesso às informações,
    permitindo que um usuário possa utilizar
    permissões conflitantes numa mesma sessão, desde
    que, as mesmas não atuem sob as informações
    acessadas por ele próprio, mas sim sobre as
    informações acessadas pelos demais usuários
    (Exemplo a seguir).

15
Modelo PRAGMA SR
  • A função Check_Access
  • Check_access(s Sessions op OPS ob OBS id
    ID) ? Boolean. Check_access (s, op, ob, id) ? (?
    r ? Roles r ? Papéis_da_sessão(s) ? (r, (op,
    ob)) ? PA ? ?Usuário_tem_operação_conflitante (
    Usuário_da_sessão(s)
    , op, ob, id))

16
Modelo PRAGMA SR
  • A função Usuário_tem_operação_conflitante
  • Usuário_tem_operação_conflitante (u, op, ob, id)
    ? (? (ps, h, n) ? OPC (op, ob) ? ps ?h
    ? ?Permissões_usuário(u) ? ps? n h ?
    ?(Operações_excutadas_usuário(u, id) ?
    (op,
    ob)) ? ps? n)

17
Modelo PRAGMA SR
  • Tomando o exemplo do goleiro, temos
  • OPC (defender, fazer gols, true, 2)
  • Permissões_usuário(u) defender, fazer gols
  • HA (Rogério,Defender,Minha_Meta,
    Rogério,Fazer Gols, Meta_Adversário

18
Modelo PRAGMA SR
  • Aplicando à função Check_access, temos
  • Check_access(Partida_Futebol,Fazer
    Gols,Minha_Meta)
  • Usuário_tem_Operação_Conflitante(Rogério,Fazer
    Gols, Minha_Meta)
  • Operações_executadas_usuário(Rogério,Minha_Meta)
    U Fazer Gols I Fazer Gols, Defender
  • Defender U Fazer Gols I Fazer Gols,
    Defender 2
  • Logo como n 2, a função retorna true como
    resposta. Portanto não será possível Fazer Gols
    na sua própria meta. Caso apliquemos a mesma
    função para a meta do adversário, a função
    retornará true, indicando que será sim possível
    fazer gols na meta oposta, resolvendo, dessa
    forma o problema.

19
Modelo PRAGMA SR
  • Permite que o mesmo usuário possa ter permissões
    conflitantes e utilizá-las simultaneamente, desde
    que não sob suas próprias informações (sua meta),
    mas sim sob as dos outros usuários.

Usuários
Papéis
Goleiro
Permissões
Defender
Fazer Gols
20
Trabalhos Futuros
  • Investigação sobre a eficiência e facilidade de
    uso do modelo num sistema real
  • Implementação do modelo
  • Prova da complexidade dos algoritmos

21
Conclusão
  • Estende o CABP
  • Contribuições
  • Livre associação de permissões a papéis e de
    papéis a usuários
  • Controle do acesso às permissões em tempo de
    execução
  • Auditoria de conflitos de atribuições de
    permissões a usuários
  • Controle do acesso de acordo com o histórico de
    utilização, verificando se um objeto pode ser
    acessado por um usuário através de uma
    determinada permissão
  • Configuração simples para a obtenção do resultado
    esperado

22
Um modelo pragmático de separação de
responsabilidades para o controle de acesso
baseado em papéis
  • Bruno César Barreto de Figueirêdo
  • PPGI UFPB / Unimed João Pessoa
    bruno_at_unimedjp.com.br
  • Gustavo Henrique Matos Bezerra Motta
  • PPGI UFPB gustavo_at_di.ufpb.br
Write a Comment
User Comments (0)
About PowerShow.com