20
Centro Universidade Anhanguera de Campo Grande – Unidade 1 Superint. CENTRO-OESTE Tec. em Redes de Computadores Aula 03 – Protocolo LDAP

Aula03 - protocolo ldap

Embed Size (px)

Citation preview

Centro Universidade Anhanguera

de Campo Grande – Unidade 1

Superint. CENTRO-OESTE

Tec. em Redes de Computadores

Aula 03 – Protocolo LDAP

Protocolo LDAP

• L ightweight D irectory A ccess P rotocol - Protocolo padronizado e largamente

suportado, hoje na versão 3 Iniciou seu desenvolvimento na Universidade de

Michigan no início dos anos 90, tendo como objetivo:

– Prover um acesso leve a diretórios padrão X.500 usando redes TCP/IP.

Implementado em vários produtos de diretório. Especificação mantida por

grupo de trabalho do IETF (http://en.wikipedia.org/wiki/LDAP)

2

Características

• Funcionamento sobre IPV4 e IPV6(LDAPv3)

• Leve e robusto;

• Suporte a vários backends(BDB, HDB,

MDB,SQL,PASSWD);

• Suporte a múltiplas instâncias de dados;

• “Backup” pode ser realizado pelos servidores slaves;

• Suporte a SASL(Autenticação) e a TLS/SSL;

3

Backend que armazena os dados

• O protocolo LDAP não determina em qual backend seus dados serão

armazenados, com isso, cada implementação pode escolher sua própria base

onde serão armazenados seus dados.

4

Schema

• Todas as informações armazenadas em um diretório precisam obedecer a

um conjunto de definições chamado schema. O schema de um diretório

define:

• Classes de objetos;

• Atributos;

• Regras de ordenação e índice para atributos;

• Qual o OID(Object Identifier) dos objetos/Atributos;

• Herança de classes de objetos.

5

Schemas(Exemplo)

6

Atributos

• Semelhantes a campos em tabelas de um

banco de dados.

• São campos que agregam elementos de

dados, como nome, telefone, email, endereço;

7

Tipo de atributo Valor

cn Carlos Veiga

sn Veiga

mail [email protected]

telefone (67)1234 -2334

Atributos

• temos alguns, tais como:

– cn: common name (nome comum);

– sn: surname (sobrenome);

– telephoneNumber: número de telefone;

– objectClass: classe de objeto.

8

Classes de Objetos

• São definições que determinam que tipos de atributos podem fazer parte

entrada do diretório e que atributos devem obrigatoriamente fazer parte

do diretório.

– Ex: A objectclass person exige os atributos cn e sn, mas pode ser

utilizado o atributo telephoneNumber

• Podem ser divididas em:

– Estruturais: Representam um objeto do mundo real.

– Auxiliares: Agregam informações a uma entrada.

• Uma ObjectClass pode herdar atributos de outra classe;

– Ex: A objectclass inetorgperson tem como raiz a objectclass person,

por isso os atributos cn e sn são obrigatórios

9

Classes de Objetos

10

Modelos LDAP

• Funcional: é o protocolo em si e prove meios de acesso aos dados na

árvore de diretório. O acesso é implementado por operações de

autenticação (bindings), operações de consultas (searchs and reads) e

atualizações (updates).

• Segurança: prove mecanismos para clientes provarem sua identidade

(autenticação) e para o servidor controlar o acesso aos dados de clientes

autenticados (autorização). O LDAPv3 prove vários métodos de

autenticação incluindo o Simple Authentication and Security Layer (SASL).

11

Modelos LDAP

12

DN – Distintinguished name

• São nomes distintos que identificam cada entrada no

backend;

• Representa o caminho completo desde a raiz do diretório até

o elemento que estamos referenciando.

• Ex: cn=carlos,ou=pessoas,dc=carlosveiga,dc=com,dc=br

• O DN deve ser único em toda a árvore LDAP

13

Atributo DC

• O objectClass Domain possui um atributo chamado dc

utilizado para mapear domínios como o DNS;

– Exemplo: dc=foo,dc=com - referencia o domínio foo.com.

14

Arquivo LDIF

• O LDIF é um formato para armazenar de arquivo com o objetivo de armazenar

informações que compõem a base LDAP

• A sintaxe de um arquivo LDIF é simples, obedecendo as seguintes regras:

– Uma linha identificando o DN

– Atributos no formato: “atributo: valor”

15

LDIF - Exemplo

16

dn: dc=nervosao,dc=com,dc=brobjectClass: domaindc: ime dn:

dn: cn=admin,dc=nervosao,dc=com,dc=brobjectClass: organizationalRoleobjectClass: simpleSecurityObjectcn: admindescription: Administrador do LDAP userPassword: {CRYPT}NHiC2OYs6eym2

dn: ou=Users,dc=nervosao,dc=com,dc=brobjectClass: organizationalUnitou: Usersdescription: Usuários da organização

dn: ou=Groups,dc=ime,dc=usp,dc=brobjectClass: organizationalUnitou: Groupsdescription: Grupos do sistema

Comandos

17

Integrações

18

Integrações

19

Referências

• Gerald Carter, LDAP System Administration

• www.openldap.org

20