Criando o subfluxo de mensagens

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:

  1. Crie um novo projeto do Message Broker chamado SecurityIdentitySampleFlowProject.
  2. Crie um novo fluxo de mensagens chamado SecurityIdentitySubFlow neste projeto. Para obter instruções, consulte Criando um fluxo de mensagens na documentação do WebSphere Message Broker.
  3. No editor de Fluxo de Mensagens, inclua e renomeie os nós listados na tabela a seguir. Para obter instruções, consulte Incluindo um Nó na documentação do WebSphere Message Broker.
    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
  4. Conecte os nós juntos na ordem listada na tabela anterior. Para obter instruções, consulte Conectando Nós na documentação do WebSphere Message Broker.
    Para verificar se conectou os nós juntos corretamente, consulte o diagrama em Sobre a Amostra Security Propagation.
  5. No editor de Fluxo de Mensagens, dê um clique duplo no nó Compute MapIdentity para abrir o editor de ESQL. Copie e cole os seguintes módulos de código ESQL no arquivo ESQL e salve o arquivo. Para obter mais informações, consulte Desenvolvendo ESQL na documentação do WebSphere Message Broker.
    	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;
    	          
  6. No editor de Fluxo de Mensagens, dê um clique duplo no nó Compute ClrHdrs para abrir o editor de ESQL. Copie e cole os seguintes módulos de código ESQL no arquivo ESQL e salve o arquivo. Para obter mais informações, consulte Desenvolvendo ESQL na documentação do WebSphere Message Broker.
    	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;
              
  7. Salve o fluxo de mensagens.

Voltar para Construindo a Amostra Security Identity Propagation

Voltar para o Início da Amostra