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.

Last modified on July 09, 2020