Conector da API

improve this page | report issue

Visão Geral (Overview)

Os aplicativos do Mobile Foundation podem chamar o microsserviço ou o serviço de back-end corporativo usando adaptadores do Mobile Foundation. Para gravar o adaptador, é necessário um entendimento da estrutura do adaptador do Mobile Foundation. Como alternativa, o Mobile Foundation facilita as chamadas seguras para o microsserviço ou o serviço de back-end corporativo sem envolver adaptadores por meio do conector da API do Mobile Foundation. O conector da API, como um adaptador, garante chamadas seguras com base no mecanismo OAuth 2.0 do Mobile Foundation. Com o Conector da API, o administrador do Mobile Foundation pode configurar e implementar os detalhes de microsserviço e de serviço de back-end corporativo no Mobile Foundation. A configuração implementada é usada pelo tempo de execução do Mobile Foundation para chamar de forma segura as solicitações de microsserviço ou de serviço de back-end por meio de um aplicativo móvel.

Benefícios

O uso do conector da API do Mobile Foundation tem os benefícios a seguir.

  • Back-end fracamente acoplado para integrar aos microsserviços.
  • Análise de dados detalhada do aplicativo e da API.
  • Integração limpa com os padrões Backend for Frontend (BFF) para arquiteturas de canais cruzados (web, dispositivo móvel ou outros) com uma única camada de microsserviço.
  • Melhor ajuste de desempenho entre canais e back-ends.
  • Menos dependente do conhecimento técnico da tecnologia do adaptador do Mobile Foundation.
  • Gerenciamento de aplicativos prontos para uso.
  • Tempo de execução leve.
  • Tempo de execução confiável e escalável sem nenhum código do usuário.

Usando o Conector da API

Para usar o Conector da API, é necessário seguir as duas etapas a seguir.

  • Defina e implemente a configuração de microsserviço ou de serviço de back-end para o servidor Mobile Foundation.
  • Modifique o aplicativo do cliente do cliente para chamar os métodos de microsserviço ou de serviço de back-end por meio da configuração implementada.

Fluxo

Conforme mostrado no diagrama, a primeira etapa é configurar e implementar os detalhes de microsserviço ou de serviço de back-end corporativo no servidor Mobile Foundation usando a API de gerenciamento de administração. O tempo de execução do Mobile Foundation chama de forma segura as solicitações doo cliente para o microsserviço ou o back-end corporativo apropriados usando a configuração implementada.

O mecanismo de segurança do Mobile Foundation baseado em OAuth assegura que a chamada seja feita por um aplicativo cliente legítimo. O SDK do cliente do Mobile Foundation e o servidor de autorizações do Mobile Foundation, em uma visão detalhada, valida a solicitação que é feita pelo aplicativo. O serviço de back-end corporativo é chamado com relação às validações de segurança satisfatórias.

Fluxo do conector da API

Definir e implementar a configuração de microsserviços ou de back-ends corporativos

A API de gerenciamento de administração do Mobile Foundation pode ser usada para configurar e implementar os detalhes de microsserviço ou de backend corporativo aos quais o aplicativo do cliente precisa se conectar. A API de gerenciamento usada para esse propósito é

http://<host>:<port>/mfpadmin/management-apis/2.0/runtimes/mfp/backend-services-config

Os métodos a seguir estão disponíveis para a API de configuração para gerenciar os detalhes de serviço de back-end por meio do Mobile Foundation.

  1. Use POST para implementar configurações de serviço back-end.
  2. Use GET para recuperar configurações de serviço de back-end implementadas.
  3. Use DELETE para excluir as configurações implementadas anteriormente.

A API POST obtém os detalhes de configuração de serviço em um formato JSON. A seguir está a sintaxe JSON de configuração.

{
"backendServices" : [
    {
        "service": "resorts",
        "baseUrl":"http://mybluemix.net/resorts",
        "auth" : {
            "type" : "basic",
            "credential" : {
                "username" : "user",
                "password" : "pass"
            }
        },
        "ConnectionProperties" : {
            "maxConnetions" : "50",
            "connectionTimeoutInMilliseconds" : "20000",
            "socketTimeoutInMilliseconds" : "20000"
        }
    }
]
}

As chaves que são usadas no JSON são explicadas nas linhas a seguir.

  1. service - O nome do serviço lógico para identificar o microsserviço ou o serviço corporativo de back-end. Esse deve ser um nome exclusivo para o serviço particular na lista de serviços configurados em seu servidor Mobile Foundation usando essa API de gerenciamento.
  2. baseurl - A URL base de microsserviço ou de serviço de back-end corporativo. Essa é a URL completa do microsserviço que expõe os métodos que podem ser chamados pelo aplicativo do cliente. O nome do método pode ser fornecido pelo aplicativo cliente.
  3. auth - Os detalhes da autenticação a serem usados para acessar o serviço de back-end corporativo.
    • type - O Mobile Foundation suporta os três tipos a seguir,
      • ‘basic’ – Autenticação básica com a seção ‘credentials’ para configurar o nome do usuário e a senha. Por exemplo,
         "credential" : {
             "username" : "hello",
             "password" : "hello"
         }
        
      • apikey - Para autenticação baseada em chave de API, uma variedade de esquemas diferentes é suportada com base no tipo policy. A seguir está a sintaxe para apikey.
         "type" : "apikey",
         "credential" : {
             "apikey" : "abcdefg",
             "policy" : "basic",
             "name" : "apikey"
         }
        

        A política pode ser header, query ou basic com base em como o serviço de back-end espera que a chave de API (apikey) seja apresentada a ele. O valor de política header deve encaminhar o apikey no cabeçalho da solicitação com o nome do cabeçalho indicado por name. A política query envia apikey como parâmetro de consulta e a política basic envia apikey como autenticação básica.

      • mfpauth - Nesse type, o microsserviço pode alavancar o mecanismo de segurança baseado em OAuth do Mobile Foundation. A seção credentials não é necessária para o tipo mfpauth e não precisa fazer parte do JSON de configuração.

      O serviço de back-end pode ser protegido por escopo de segurança, servidor de autorização e servidor de autenticação do Mobile Foundation. Antes de fornecer acesso ao serviço de back-end, o mecanismo de autenticação do Mobile Foundation assegura que a solicitação transporte o token de acesso válido com o escopo necessário. Quando o servidor de autenticação do Mobile Foundation confirma a validade do token de acesso que é apresentado durante a introspecção, o acesso ao serviço de back-end é concedido. Para obter detalhes sobre como configurar o serviço de back-end para usar o servidor de autenticação do Mobile Foundation, consulte aqui.

      • extauth - Esse tipo pode ser usado para suportar microsserviços de back-end usando o servidor de autenticação externo ou de terceiros. O aplicativo cliente deve passar o token de acesso esperado pelo serviço de back-end como um cabeçalho especial nomeado ext-token. O conector da API deve encaminhar o token de acesso recebido como parte do cabeçalho ext-token do aplicativo cliente como Authorization para o microsserviço de back-end. A seção de credencial não é necessária no caso do tipo extauth e não precisa fazer parte do JSON de configuração. A introspecção e a renovação do token externo após a validade do token terão que ser manipuladas pelo aplicativo cliente e pelo microsserviço de back-end. O mecanismo de segurança do Mobile Foundation para validar o aplicativo cliente permanece o mesmo.
  4. O ConnectionProperties pode ser usado para configurar parâmetros de conexão entre o servidor Mobile Foundation e os microsserviços de back-end. Esses parâmetros são opcionais e se, não forem fornecidos, deverão usar valores padrão. A seguir está a sintaxe para ConnectionProperties.
     "ConnectionProperties" : {
         "maxConnetions" : "50",
         "connectionTimeoutInMilliseconds" : "20000",
         "socketTimeoutInMilliseconds" : "20000"
     }
    

    A seguir estão os valores padrão para parâmetros de conexão individuais.

    • maxConnetions => 20
    • connectionTimeoutInMilliseconds => 30000 (ou seja, 30 segundos)
    • socketTimeoutInMilliseconds => 30000 (ou seja, 30 segundos)

A seguir está a sintaxe para os comandos curl da API do administrador.

  1. POST para implementar configurações.
     curl -X POST -u admin:admin 'http://<host>:<port>/mfpadmin/management-apis/2.0/runtimes/mfp/backend-services-config' --header 'Content-Type: application/json' --data-binary  @config.json
    

    Em que config.json é o arquivo JSON com configurações semelhantes à sintaxe JSON acima.

  2. GET para buscar as configurações existentes.
     curl -X GET -u admin:admin 'http:// <host>:<port>/mfpadmin/management-apis/2.0/runtimes/mfp/backend-services-config'
    
  3. DELETE para remover as configurações implementadas existentes.
     curl -X DELETE -u admin:admin 'http:// <host>:<port>/mfpadmin/management-apis/2.0/runtimes/mfp/backend-services-config'
    

Após a configuração de microsserviço ou de serviço de back-end ser implementada no Mobile Foundation, será possível usar o SDK do cliente do Mobile Foundation para chamar o serviço de back-end corporativo. Para obter mais informações sobre a API do SDK do cliente, consulte aqui.

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on July 09, 2020