O fluxo de mensagens SecurityIdentitySubFlow da amostra Security Identity Propagation é fornecido, mas se preferir você mesmo criar o fluxo de mensagens, use as instruções a seguir:
Gavetas de Paleta | Tipo de Nó | Nome de Nó |
---|---|---|
Construção | Input | Input |
Transformação | Compute | MapIdentity |
HTTP | HTTPRequest | HTTPRequest_AsID |
Transformação | Compute | ClrHdrs |
Construção | Saída | Saída |
CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN CALL CopyEntireMessage(); -- Configure a Identidade Mapeada se a mensagem de Entrada incluir o "sinalizador" -- para o acionador de Mapeamento da Identidade DECLARE MapIdActionsRef REFERENCE TO InputRoot.XMLNSC.Envelope.Body.MapIdentity; IF lastmove(MapIdActionsRef) THEN -- Crie um conjunto de credenciais de nome de usuário e senha SET OutputRoot.Properties.IdentityMappedType = 'usernameAndPassword'; -- Nome de Usuário de Origem da Pasta para minúsculas DECLARE lusername CHAR; SET lusername = LCASE(InputRoot.Properties.IdentitySourceToken); -- Token de nome de usuário é um endereços de e-mail, criado a partir do nome de usuário da origem com "@company.com" anexado SET OutputRoot.Properties.IdentityMappedToken = lusername || '@company.com'; -- A senha é criada como o nome de usuário da origem precedido por "p_" com o ano anexado DECLARE yearStr CHAR; SET yearStr = (EXTRACT(YEAR FROM CURRENT_TIMESTAMP)); SET OutputRoot.Properties.IdentityMappedPassword = 'p_' || lusername || yearStr; -- O emissor é este módulo SET OutputRoot.Properties.IdentityMappedIssuedBy = 'SecurityIdentitySubFlow_MapIdentity'; END IF; RETURN TRUE; END;
CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN CALL CopyEntireMessage(); -- Elimina os cabeçalhos do pedido de HTTP da árvore SET OutputRoot.HTTPResponseHeader = NULL; RETURN TRUE; END;
Voltar para Construindo a Amostra Security Identity Propagation