Usando expressões Spring EL

Usando a sintaxe das expressões Spring ELarrow-up-right é possível ler os valores dos atributos de um objeto do diretório de forma dinâmica e ainda assim transformá-los caso necessário.

As expressões Spring EL são demarcadas pelos caracter "{" e "}", e podem conter referencias à atributos de objetos disponíveis para o mapeamento.

As expressões Spring EL são usadas como a forma padrão, simples e direta para os mapeamentos de atributos de provisionamento.

Objetos disponíveis nas expressões

Para cada um dos eventos de provisionamento tem-se um contexto com objetos disponíveis para realizar o mapeamento.

Pode-se ver nas tabelas abaixo a relação do evento de provisionamento com as variáveis disponíveis para serem usadas nas expressões SpringEL, no mapeamento de atributos:

Criação de nova conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Atualização de conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Inativação de conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Ativação de conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Revogação de conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Troca de senha

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Concessão de direito

O evento de provisionamento de concessão de direito tem dois mapeamentos, um para o direito e outro para a conta. Isso ocorre porque um membro de direito é uma relação entre um direito e uma conta.

Mapeamento do direito

Variável
Objeto
Exemplo

entitlement

{entitlement.name}

resource

{resource.id}

Mapeamento da conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Revogação de direito

O evento de provisionamento de revogação de direito também tem dois mapeamentos, um para o direito e outro para a conta. Isso ocorre porque um membro de direito é uma relação entre um direito e uma conta.

Mapeamento do direito

Variável
Objeto
Exemplo

entitlement

{entitlement.name}

resource

{resource.id}

Mapeamento da conta

Variável
Objeto
Exemplo

account

{account.accountIdentifier}

resource

{resource.id}

user

{user.firstName}

Criação de direito

Variável
Objeto
Exemplo

entitlement

{entitlement.name}

resource

{resource.id}

Atualização de direito

Variável
Objeto
Exemplo

entitlement

{entitlement.name}

resource

{resource.id}

Remoção de direito

Variável
Objeto
Exemplo

entitlement

{entitlement.name}

resource

{resource.id}

Exemplos de expressões

A tabela abaixo ilustra alguns exemplos de expressões comuns:

Expressão
Resultado

{user.firstName}

Retorna o valor do campo firstName do usuário.

{user.lastName.toUpperCase()}

Retorna o valor do campo lastName do usuário, em letras maiúsculas.

{account.accountIdentifier}

Retorna o valor do campo accountIdentifier da conta.

{account.accountIdentifier}_ID

Retorna o valor do campo accountIdentifier da conta, e concatenado com o termo "_ID".

{user.get('occupationCode')}

Retorna o valor do campo adicional occupationCode do usuário.

{entitlement.name}

Retorna o valor do campo name do direito.

{user.department.name}

Retorna o valor do campo name do departamento do usuário.

Atualizado

Isto foi útil?