Para acessar com segurança recursos e serviços externos ao fluig à partir de processos de workflow (que podem ser encontrados aqui) ou customizações, pode-se utilizar a funcionalidade do Authorize Client no Fluig. Essa funcionalidade consiste em um cadastro de configurações de acesso e segurança do serviço externo a ser invocado, ou seja, para cada caso de protocolo de segurança sendo OAuth 1, OAuth 2 ou Basic Authentication, serão informados e cadastrados os token's de acesso, chaves, usuário, senha, etc.
Para acesso ao cadastro do Authorize Client, acessar no Fluig o menu Painel de Controle, aba WCM, opção Authorize Client. A funcionalidade provê recursos para inclusão, alteração, exclusão, consulta e teste dos client's.
Dependendo do client de serviço a ser cadastrado, pode-se utilizar mecanismos de autenticação distintos, como OAuth 1, OAuth 2 ou Basic Authentication, para cada caso serão obrigatórias informações específicas para cada protocolo.
Para tipo de autorização OAuth 1, os métodos http disponíveis são: PUT, POST, GET, DELETE. |
Cadastro de client com autorização OAuth 1, informar os campos:
|
Cadastro de client com autorização OAuth 2, informar os campos:
|
Cadastro de client com autorização Basic Authentication, informar os campos:
|
Após o cadastro do Client, é possível testar as configurações de acesso utilizando o endpoint GET cadastrado. Basta selecionar o client e clicar no link Testar Serviço na pagina principal da funcionalidade.
Para consumo do serviço à partir de um processo de workflow (que podem ser encontrados aqui) e customização deve ser informado os seguintes parâmetros no javascript.
Para envio dos parâmetros no JSON, é obrigatório utilizar o nome das chaves conforme descrito abaixo.
|
Exemplo de chamada aos serviços com http method POST
var clientService = fluigAPI.getAuthorizeClientService(); var data = { serviceCode : 'bamboo', endpoint : '/api/public/2.0/users/create', method : 'post', params : { login : 'authorize.client', email : '[email protected]', code : 'authorize.client', firstName : 'authorize', lastName : 'client', fullName : 'authorize client', password : '123', extData :{ 'addicional-data':'123456' } } } clientService.invoke(JSON.stringify(data)); |
O recurso para consumo do serviço externo também está disponível no componente SDK através do AuthorizeClientSdkService
Veja a seguir o exemplo para a chamado ao serviço no SDK:
private getAuthorizeClientSdkService getAuthorizeClientSdkService() throws SDKException { return new FluigAPI().getAuthorizeClientSdkService(); } |