Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Nota
titleObservação
O fluig não é compatível com o protocolo OAuth 2.0.


Processo de autenticação

Para que um aplicativo consiga atuar no fluig em nome de um usuário ou em nome próprio é necessário que ele esteja previamente cadastrado na plataforma fluig com suas chaves pública e privada. Quando o aplicativo estiver cadastrado no fluig, é possível iniciar o processo de autenticação conforme etapas abaixo:

...

Painel
titleConsumo da API Pública em Eventos

Utilizando um objeto consumer

Para obter uma instância de consumer é necessário solicitar ao objeto de ambiente oauthUtil executando o método getNewAPIConsumer ou getNewAPIConsumerAsCurrentUser.

  • getNewAPIConsumer: Utilizada para solicitar um objeto de acesso com autenticação por usuário da aplicação. 
  • getNewAPIConsumerAsCurrentUser: Utilizada para solicitar um objeto de acesso com autenticação pelo usuário logado.

IMPORTANTE: Para poder utilizar esse método você deve marcar na página do usuário aplicativo a opção "Pode agir como usuário logado em eventos customizados"

O usuário da aplicação utiliza o modo Impersonate como forma de identificação na autenticação do acesso. Esse modo Impersonate só é permitido através dos eventos customizados e não fora dele.


Para ambos os métodos descritos acima, utilizar os seguintes parâmetros:

  • Consumer Key
  • Consumer Secret
  • Token Access
  • Token Secret

Para mais informações acesse o passo Cadastrar aplicativo no fluig


Método GET

Esse método realiza uma chamada GET na API Publica, passando como argumento uma URI válida da API .

Ex: consumer.get("/public/social/community/comunidade1");

Método POST

Esse método realiza uma chamada POST na API Publica, passando como argumento uma URI válida da API e os dados enviados em formato JSON.

Ex: consumer.post("/public/social/post/create/with/upload", "{\"text\":\"Post criado via evento\",\"visibility\":\"PUBLIC\"}");

...

Deck of Cards
effectDuration0.5
historyfalse
idsamples
effectTypefade
Card
defaulttrue
id1
labelPasso1
  • Acesse o menu Painel de controle, localize o agrupador Parâmetros técnicos e acione a opção Oauth Provider.

Nota
Em atualizações anteriores à 1.6.5 (Liquid), essa opção está localizada na aba Colaboração do Painel de controle.
Card
id2
labelPasso 2
  • Clique em Adicionar, preencha os campos conforme a imagem e salve.

Cadastro de provedor Oauth 

Detalhes:

CampoExemplo
Código01
OAuth ProviderWCM
DescriçãoAplicativo de exemplo
Acess Token URL

http://<ServerFluig>/portal/api/rest/oauth/access_token


Request Token URL

http://<ServerFluig>/portal/api/rest/oauth/request_token 


User Authorization URL http://<ServerFluig>/portal/api/rest/oauth/authorize
Request MethodGET
Signature MethodHMAC-SHA
Card
id3
labelPasso 3
  • Volte para o Painel de controle e acesse agora a opção Oauth application.


Nota
Em atualizações anteriores à 1.6.5 (Liquid), essa opção está localizada na aba Colaboração do Painel de controle.


  • Clique em Adicionar, preencha os campos conforme imagem e salve:

Cadastro de aplicativo Oauth 

Detalhes:

CamposExemplo
Consumer Key

<chave publica de seu aplicativo>

OAuth Provider

Provedor cadastrado no Passo 2

Consumer Secret<chave secreta de seu aplicativo>


Card
id4
labelPasso 4


  • Opcional: Caso seu aplicativo execute ações em nome próprio, você pode criar um usuário aplicativo.
Informações

Se desejar que o usuário aplicativo execute ações em nome de outro usuário cadastrado na plataforma, basta selecionar a opção Permite Impersonalização. Selecionando este recurso, o usuário aplicativo pode, por exemplo, fazer um post em uma comunidade em nome de outro usuário, sendo apresentado da seguinte forma:

  • 'Usuário x' fez uma publicação na comunidade, em vez de 'App X' fez uma publicação na comunidade.

Este comportamento é válido para todos métodos da API como por exemplo, publicação de documentos, movimentar processos entre outros.

  • Na mesma tela de cadastro de aplicativo OAuth existe uma ação chamada Usuário Aplicativo. Ao acessá-la poderão ser gerados tokens exclusivos para o aplicativo.
  • Caso as ações do seu aplicativo devam ser executadas em nome de um usuário, então o aplicativo deve passar pelo processo padrão de autenticação OAuth.

Usuário aplicativo

...

View file
namefluig-client-demo.zip
height150

  • Baixe o arquivo e descompacte-o em um diretório de sua preferência.

O projeto basicamente consiste em um pom.xml xml (Project Object Model, arquivo padrão do Maven) e  e uma classe Java chamada FluigClientExample. Abra a classe e verifique a documentação gerada a partir de comentários.

Você verá que é necessário construir um objeto FluigClient objeto FluigClient e este objeto recebe alguns parâmetros como host, consumer key e consumer secret. Você deve alterar os valores passados na construção para um host conhecido e informar o consumer key e secret da aplicação de sua responsabilidade, conforme o código adianteabaixo:

Bloco de código
languagejava
FluigClient fluig = new FluigClient()
			.setHost("http://127.0.0.1:8080")
			.setConsumerKey("informe aqui o seu consumer key")
			.setConsumerSecret("informe aqui o seu consumer secret")
			.connect();

...

Depois de realizar as alterações, entre no diretório gerado e você notará que o arquivo pom.xml localiza-se na raiz do projeto.

...

Durante o processo de build, o Maven irá exibir vários logs , como dependências sendo baixadas dentre outros.

Depois do build finalizado com sucesso, repare que o arquivo target/api-client-demo-jar-with-dependencies.jar foi gerado. Este arquivo é um executável Java.

...

Bloco de código
languagebash
$ java -jar target/api-client-demo-jar-with-dependencies.jar

Se você reparar na classe FluigClientExampleclasse FluigClientExample, a execução irá: listar os usuários, criar uma publicação na página pessoal do usuário, criar uma publicação em uma comunidade e listar as publicações de uma comunidade. Durante a execução os logs dos resultados das chamadas serão exibidos no console.

...