Top Banner
DOCUMENTAÇÃO TÉCNICA | ABRIL DE 2016 Acelere o desenvolvimento de aplicativos móveis corporativos com o CA Mobile App Services
14

Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens...

Jan 30, 2018

Download

Documents

phamminh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

DOCUMENTAÇÃO TÉCNICA | ABRIL DE 2016

Acelere o desenvolvimento de aplicativos móveis corporativos com o CA Mobile App Services

Page 2: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

Sumário

ca.com/br2 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Seção 1 3A necessidade de negócios: aceleração do desenvolvimento de aplicativos

Seção 2: 6consolidação de mercado: convergência de mBaaS e gerenciamento de ApIs

Seção 3: 7cA mobile App Services: recursos principais

Seção 4: 11cA mobile ApI Gateway: recursos

Seção 5: 13Arquitetura

Seção 6: 14Benefícios para a empresa e para o desenvolvedor

Page 3: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

3 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Seção 1

O desafio: aceleração do desenvolvimento de aplicativos Já há algum tempo, as empresas de todos os tamanhos estão criando aplicativos móveis a partir de seus ativos de aplicativos tradicionais visando obter ganhos de produtividade e uma maior satisfação dos clientes. Em muitos casos, esses projetos começaram com um requisito específico de mobilidade originado da linha de negócios da empresa. no início, o projeto tem um escopo limitado, mas com o passar do tempo a tI acaba se envolvendo conforme aumenta o número de projetos móveis e o escopo se amplia. com o aumento da complexidade, o aplicativo acaba demorando mais para ser levado ao mercado. um aplicativo é suportado em apenas uma plataforma, mas os usuários — funcionários ou clientes — esperam que ele funcione em várias plataformas diferentes. não é sensato pedir que os usuários mudem de dispositivo para poderem usar o aplicativo.

Em pouco tempo, a empresa percebe que seu método existente para executar projetos móveis não é escalável. Ao adotar uma abordagem de plataforma, a empresa pode reduzir a fragmentação, oferecer uma experiência melhor e unificada em diferentes aplicativos e incentivar uma maior reutilização do software. mas adotar uma abordagem de plataforma não necessariamente resolve todos os desafios.

Esta documentação técnica tenta analisar todos os desafios enfrentados pelo desenvolvedor e relacionados ao desenvolvimento de aplicativos móveis/Iot (Internet of things - Internet das coisas). também oferecemos uma orientação para o desenvolvedor e uma análise de tendências geral do setor. veremos o cA mobile App Services em detalhes: uma solução muito viável e flexível criada para ajudar os desenvolvedores a acelerar o desenvolvimento de aplicativos móveis e de Iot.

Desafios dos aplicativos móveisHá muitas ferramentas de aplicativos móveis dentre as quais podemos escolher, mas desenvolver um aplicativo atrativo não é uma tarefa que está ficando mais fácil. um desenvolvedor ainda precisa levar em conta considerações tradicionais, como:

• Aplicativos corporativos vs. aplicativos de consumidor: primeiramente, você deve determinar o público-alvo, pois criar aplicativos para um funcionário corporativo é completamente diferente de criar um aplicativo para um cliente. com o primeiro, você pode precisar de mais ferramentas para implantar e proteger o aplicativo. para aplicativos B2c (Business to consumer - negócios para o consumidor), há uma série de plataformas móveis para escolher, mas menos opções em termos de adição de camadas de segurança.

• Várias plataformas: em segundo lugar, é preciso determinar a quais plataformas você pretende oferecer suporte. Android e ioS são as opções mais óbvias, mas se você estiver visando um público mais amplo, talvez precise oferecer suporte a Windows 10 e híbridos, como cordova. Isso também tende a variar conforme a região.

• Conectividade de dados: em terceiro lugar, um aplicativo que não se conecta à fonte de dados na empresa provavelmente não será um aplicativo corporativo muito convincente. os aplicativos são um meio para se conectar e consumir dados. é essencial que o desenvolvedor aproveite as ferramentas para simplificar a integração com as fontes de dados, não importa se são serviços na nuvem ou dados locais.

Desafios adicionais são inerentes em muitas categorias de plataformas de desenvolvimento de aplicativos móveis, como mBaaS (mobile Backend as a Service - Back-end móvel como Serviço), mEAps (mobile Enterprise Application platforms - plataformas de Aplicativos corporativos móveis)/mADps (mobile Application Development platforms - plataformas de Desenvolvimento de Aplicativos móveis) ou mobile Application Services (com gerenciamento de ApIs).

novos desafios para o desenvolvimento de aplicativos cada vez mais, conforme mudam as expectativas dos usuários de aplicativos, os desenvolvedores passam a enfrentar novos desafios. Atualmente, um aplicativo precisa ser intuitivo. Ele precisa estar em harmonia com o ambiente no qual opera, ou seja, o aplicativo precisa estar preparado para ser executado em vários dispositivos e na nuvem. Ele precisa se conectar com outros aplicativos em outros dispositivos. Ele precisa monitorar e controlar outros dispositivos. conforme ele interage com o ambiente, pode negociar o acesso a outros objetos, como portas, tvs, carros ou qualquer outro objeto inteligente que tenha uma pegada virtual (Iot).

ca.com/br

Page 4: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

4 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Em muitos casos de uso da Iot, o aplicativo móvel será o provedor da interface de usuário do objeto inteligente. Isso faz sentido porque os paradigmas de uI (user Interface - Interface do usuário) em dispositivos móveis são testados e entendidos pelo consumidor. Entretanto, todos esses elementos representam a complexidade com a qual o desenvolvedor de aplicativos precisa lidar, incluindo:

• A proximidade com outros dispositivos ou objetos inteligentes. uma enorme quantidade de tecnologias relacionadas à proximidade é relevante para os desenvolvedores de aplicativos móveis, e boa parte da inovação está acontecendo nessa área. Semicondutores estão oferecendo um fluxo constante de melhorias e inovações. Alguns incluem BLE (Bluetooth Low Energy), Wi-Fi, QRc (Quasi Resonant converter), beacons, GpS, redes em malha, como ZigBee, e ultrassom. Embora esses elementos estejam ficando mais baratos e atrativos para integrar ou acrescentar às plataformas móveis, os desenvolvedores continuam a enfrentar o desafio de aproveitar esses tipos de recursos nos aplicativos de forma robusta e segura.

• A percepção dos aplicativos quanto à identidade de outras entidades, como usuários, dispositivos e aplicativos. com a Iot, você pode adicionar "coisas" a essa mistura. nos casos de uso de aplicativos e da Iot, há uma necessidade de autenticar e autorizar o acesso a recursos que representam essas entidades. é praticamente impossível definir políticas de segurança utilizáveis quando não se conhece a identidade dessas entidades. Ainda não existe um padrão específico da Iot para esse domínio, o que significa que podemos esperar que soluções proprietárias prosperem, criando assim uma maior complexidade do ponto de vista do desenvolvedor de aplicativos.

• A reatividade dos aplicativos. os aplicativos modernos precisam ser reativos na forma como respondem rapidamente aos eventos originados em outros componentes. o desenvolvedor precisa definir uma forma de passar os dados e eventos em torno dos diversos componentes da solução. como os dispositivos, sistemas operacionais e aplicativos são heterogêneos, é difícil estabelecer uma ligação estreita entre os componentes. Há alguns poucos mecanismos de notificação disponíveis, mas eles tendem a ser específicos das plataformas móveis. para alcançar essa dimensão e robustez, o desenvolvedor poderia implementar uma fábrica de mensagens de publicação-assinatura, possibilitando a ligação mais flexível desejada nesses sistemas modernos. o maior desafio nesse sentido seria implementar uma camada de segurança com o mecanismo de publicação-assinatura que pudesse atender ao amplo número de casos de uso compartilhados entre aplicativos móveis e de Iot.

• As qualidades de envolvimento dos aplicativos. conforme um aplicativo amplia seu alcance de dispositivos e coisas, ele precisa se envolver com os usuários e grupos de usuários. um logon social não apenas é uma necessidade básica para um fácil ingresso, mas na maioria dos aplicativos sociais e colaborativos, os desenvolvedores precisam classificar objetos, como família, grupos de funcionários, clientes em um local, etc. Há uma série de casos de uso que exigem uma classificação de grupos. o desafio é que nem todas as informações de grupos podem ser controladas no LDAp (Lightweight Directory Access protocol) da empresa por motivos de conformidade. também não existem ApIs (Application program Interfaces - Interfaces de programação de Aplicativos) ou SDKs (Software Development Kits - Kits de Desenvolvimento de Software) claros e fáceis de usar disponíveis para fazer isso.

• A importância de oferecer uma estrutura de mensagens segura. Embora as características colaborativas dos aplicativos estejam se tornando mais importantes para a experiência do usuário, existe um esforço significativo para oferecer uma estrutura de mensagens segura. Hoje, a interatividade com outro usuário ou grupo é indispensável. mesmo assim, poucas soluções oferecem um sistema de mensagens completamente seguro na forma de ApIs e SDKs abertos que podem oferecer a criptografia automática. criar uma infraestrutura de chave pública costuma ser complicado porque o processamento de chaves e certificados exige cuidado.

ca.com/br

Page 5: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

5 | DocumEntAção técnIcA: cA moBILE App SERvIcES

o número de usuários, dispositivos e aplicativos está crescendo exponencialmente. como você pode integrar essas entidades de forma inteligente?

• usuários com a empresa

• usuários com outros usuários

• usuários com grupos

• Aplicativos com dados

• Aplicativos com dispositivos

• Aplicativos com usuários

Ao adotar uma abordagem estratégica para os aplicativos móveis, as empresas devem considerar essas questões enquanto criam uma plataforma coerente que possa promover o avanço das iniciativas de aplicativos móveis e de Iot.

princípios orientadores Aqui estão alguns princípios orientadores aos quais um desenvolvedor de aplicativos precisa se atentar:

• Flexibilidade: use seus próprios IDEs (Integrated Development Environments - Ambientes de Desenvolvimento Integrados) e escolha estruturas abertas e extensíveis.

• Agilidade: ofereça as funcionalidades desejadas ao longo do tempo nas diversas plataformas.

• Fornecedor fixo: evite isso usando estruturas de código aberto sempre que possível.

• Integração: prepare-se para a integração e certifique-se de que a plataforma esteja pronta para se integrar a componentes de terceiros.

• Preparação para IoT: use uma plataforma que possa operar facilmente com sistemas de Iot, seja para monitoramento ou controle via funcionalidade de back-end ou direta entre dispositivos.

• Transmissão de mensagens: aumente o Http (Hypertext transfer protocol - protocolo de transferência de Hipertexto) com um padrão de mensagens que ofereça um paradigma de publicação-assinatura para escalar melhor os aplicativos que exigem uma entrega assíncrona de eventos e dados.

• Segurança: elabore a segurança diretamente em sua plataforma para evitar preocupações e para que os aplicativos dependam de uma plataforma comprovada.

?App

App App

Figura 1

Aplicativos, usuários, grupos e dispositivos criam desafios de integração

ca.com/br

Page 6: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

6 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Figura 2

mercados em fluxo

Seção

Consolidação de mercado: convergência de MBaaS e gerenciamento de APIsHoje em dia, uma série de diferentes fornecedores atende a diferentes finalidades na "cadeia alimentar" do desenvolvimento de aplicativos. no front-end (o lado do cliente), você tem diversas estruturas. Algumas são proprietárias e outras mais abertas para ajudar os desenvolvedores com o design do aplicativo. Já no back-end, há todo tipo de serviço, desde serviços especializados de notificação por push até middleware móvel e fornecedores de mBaaS. mesmo fornecedores de infraestrutura em nuvem, como AWS (Amazon Web Services) e Google, oferecem um número cada vez maior de recursos para desenvolvedores de aplicativos móveis.

Essas categorias são separadas por linhas tênues que estão cada vez mais se sobrepondo. Além disso, os gateways de ApI estão bem no meio delas. Durante um tempo, achávamos que a melhor abordagem era criar uma oferta móvel por trás de uma solução de gerenciamento de ApIs sólida e bem-sucedida. Isso foi o que fizemos há três anos com o cA mobile ApI Gateway (mAG). Ao ampliar o gateway com SDKs do lado do cliente, os desenvolvedores de aplicativos móveis puderam conectar e consumir ApIs de qualquer aplicativo móvel sem precisar se preocupar com o contexto da segurança. Esse método também é controlado por diretivas estabelecidas no gateway e estendidas ao cliente remoto.

os gateways de ApI desempenham um importante papel na segurança de ativos corporativos por meio das diretivas de ApI. Eles são ainda mais importantes agora que as empresas estão criando soluções para Iot. (Leia o artigo: "Why ApIs Are critical for Iot Success"). como os gateways de ApI já funcionam como o elemento que liga os diversos componentes de software, eles estão posicionados de forma ideal, especialmente se puderem ser estendidos com as ferramentas e recursos que os desenvolvedores tanto desejam.

ca.com/br

Page 7: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

7 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Seção 3

CA Mobile App Services: recursos principaiso cA mobile App Services está no ponto de convergência entre as diversas plataformas móveis e se destaca como uma oferta única e eficiente, criada para ajudar os desenvolvedores a criar rapidamente aplicativos móveis e de Iot. vejamos como nossos recursos possibilitam que os desenvolvedores superem os desafios dos crescentes projetos de aplicativos móveis e de Iot.

o cA mobile App Services apresenta os recursos para os desenvolvedores por meio de SDKs e ApIs abertas, oferecendo a eles um método conveniente para acessar o back-end. como tudo é protegido pelos recursos existentes do mobile ApI Gateway, os desenvolvedores de aplicativos móveis podem desfrutar de uma proteção de primeira sem se preocupar em estabelecer diretivas de segurança. Além disso, oferecemos um conjunto de serviços para aplicativos que vão desde o gerenciamento de usuários, gerenciamento de grupos, publicação-assinatura até serviços de armazenamento e mensagens — todos disponíveis como uma funcionalidade de SDK para plataformas ioS e Android.

Gerenciamento de usuáriosum dos melhores recursos básicos com os quais os aplicativos precisam lidar é o gerenciamento de usuários. Em muitas formas, esse é considerado um elemento fundamental básico para qualquer aplicativo corporativo. o cA mobile App Services oferece ApIs e SDKs abertos, que oferecem recuperação e gerenciamento de usuários por meio de ApIs 2.0 e SDKs móveis nativos; integração pronta para o uso com provedores de identidades que oferecem suporte a LDAp; e terminais protegidos por oAuth.

Além disso, os recursos de gerenciamento de usuários do cA mobile App Services:

• possibilitam que os aplicativos aproveitem com facilidade informações detalhadas e pesquisas de usuários.

• oferecem o gerenciamento básico de usuários para dar aos desenvolvedores o que eles precisam para possibilitar que os usuários se inscrevam e ingressem no aplicativo.

• oferecem ApIs com base em padrões.

• Incluem SDKs móveis nativos para maximizar a produtividade do desenvolvedor.

• Facilitam o desenvolvimento de aplicativos independentes de IDp (Identity provider - provedor de Identidades).

• possibilitam o controle sobre os dados de usuários que são externalizados.

• oferecem controle de acesso no nível do aplicativo e revogação ao acesso em tempo real.

• oferecem customização e extensibilidade ilimitadas usando diretivas de gateway.

Figura 3

Atributos do usuário usados em um aplicativo

Figura 4

Filtro de usuário

ca.com/br

Page 8: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

8 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Gerenciamento de gruposum dos recursos mais incríveis do cA mobile App Services é a capacidade de criar e gerenciar grupos por SDKs. Isso significa que um aplicativo pode se relacionar com seu próprio grupo ou com outros grupos existentes. As ApIs no back-end seguem a especificação ScIm (System for cross-domain Identity management - Sistema de Gerenciamento de Identidades entre Domínios), que deve facilitar a integração e a interoperabilidade. no entanto, fundamental para esse recurso é a capacidade de criar novos grupos com base em critérios determinados pelo aplicativo, como localização, proximidade com outros objetos ou domínio de endereço Ip.

você pode gerenciar os grupos com base na necessidade de seus aplicativos por meio de ApIs ScIm 2.0 e SDKs móveis nativos. ofereça suporte a diferentes tipos de grupos e cenários, por exemplo, grupos corporativos que mapeiam um IDp existente e grupos ad-hoc que possibilitam que o aplicativo crie grupos efêmeros. Aproveite o armazenamento de grupo interno para grupos ad-hoc e terminais protegidos por oAuth.

Além disso, use os recursos de gerenciamento de grupos ad-hoc do cA mobile App Services para:

• possibilitar que os desenvolvedores criem aplicativos mais colaborativos com mais rapidez.

• possibilitar que grupos corporativos usem os grupos no IDp da empresa.

• possibilitar que grupos ad-hoc deixem os desenvolvedores criar os grupos de que precisam para seus aplicativos sem comprometer o armazenamento de identidades existente.

• permitir que grupos virtuais lidem com os usuários com base em critérios.

• criar interfaces com base em padrões respaldadas por SDK nativo para dar um fácil acesso aos desenvolvedores de aplicativos móveis.

• possibilitar o desenvolvimento de aplicativos independentes de IDp.

• Aumentar a conformidade mantendo os dados de aplicativos separados dos sistemas de identidade existentes.

• oferecer controle de acesso no nível do aplicativo e revogação ao acesso em tempo real.

• oferecer customização e extensibilidade ilimitadas usando diretivas de gateway.

publicação-assinatura o padrão de publicação-assinatura no cA mobile App Services é criado com base no suporte ao mQ telemetry transport (mQtt) 3.1.1. Em muitos sentidos, esse é um grande complemento da solução de ApIm (ApI management - Gerenciamento de ApIs). Em primeiro lugar, ele possibilita um paradigma de consumo de mensagens onde um aplicativo não precisa coletar dados, mas pode ser notificado sempre que novos dados estiverem disponíveis. Isso proporciona um dimensionamento muito melhor do que o paradigma tradicional de solicitação-resposta quando o sistema tem um grande número de entidades que precisam consumir os dados. Em segundo lugar, o esquema de publicação-assinatura é uma parte integrante de qualquer implantação de Iot, na qual os dados e eventos precisarão ser propagados para outros sistemas quase em tempo real. A heterogeneidade desses sistemas exige uma ligação mais flexível, que é um dos principais benefícios da publicação-assinatura, já que o editor não sabe por quem e como os dados são consumidos. Agora, pela perspectiva do operador do sistema, o editor ainda é importante e precisa de uma forma de controlar facilmente quem pode publicar e assinar determinados tópicos.

ca.com/br

Page 9: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

9 | DocumEntAção técnIcA: cA moBILE App SERvIcES

os recursos de publicação-assinatura incluem:

• Distribuição de dados e eventos com base em sistema de mensagens para fornecer uma maior desvinculação entre os componentes.

• Suporte ao mQtt 3.1.1 no modelo de proxy do broker.

• publicação-assinatura via ApIs de mQtt e SDKs móveis nativos.

• tópicos protegidos para usuários e grupos.

• Segurança completa entre editores e assinantes.

• Suporte a diferentes níveis de QoS (0, 1 e 2), como: no máximo uma vez — "disparar e esquecer" ou "melhor esforço"; pelo menos uma vez — mensagem armazenada até que seja vista pelo destinatário; e exatamente uma vez — mensagem armazenada até que o destinatário a tenha reconhecido.

Além disso, use os recursos de gerenciamento de publicação-assinatura do cA mobile App Services para:

• Aproveitar uma infraestrutura de publicação-assinatura pronta para o uso.• Acessar um ponto de integração com o mundo da Iot.• usar um protocolo de mensagens leve.• possibilitar o suporte a diferentes brokers do mQtt.• oferecer controle sobre as mensagens antes que elas cheguem ao broker e depois que elas o deixam.• Aproveitar a Qualidade de Serviço para ajudar os desenvolvedores de aplicativos a aproveitar uma distribuição confiável.• Facilitar a comunicação segura entre editores e assinantes.• Aproveitar as ApIs com base em padrões.• usar SDKs móveis nativos para maximizar a produtividade do desenvolvedor.• Aproveitar a customização e a extensibilidade ilimitadas usando diretivas de gateway.

mensagens entre usuários os desenvolvedores sempre se esforçam para tornar os aplicativos mais colaborativos, inclusive por meio de recursos sociais. mas em um aplicativo do tipo corporativo, você normalmente espera poder entrar em contato com outros colegas por meio de um bilhete rápido ou uma ligação. o componente de mensagens entre usuários no cA mobile App Services permite que o desenvolvedor integre facilmente o sistema de mensagens nos aplicativos com apenas algumas linhas de código. Ele pode usar um sistema de mensagens entre usuários ou de usuários para grupos. no último caso, todos os membros do grupo receberão a mensagem. Embora existam algumas plataformas de mensagens, apenas algumas poucas oferecem a simplicidade que o cA mobile App Services oferece, e um número ainda menor oferece a camada de segurança avançada com criptografia automática de carga de implantação para que apenas o destinatário possa descriptografar as mensagens.

com os recursos entre usuários, você pode habilitar as mensagens para usuários e grupos da empresa via ApIs de mQtt e SDKs móveis nativos, além de aproveitar a segurança completa.

Figura 5

Assinatura das mensagens

ca.com/br

Page 10: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

10 | DocumEntAção técnIcA: cA moBILE App SERvIcES

com os serviços de mensagens do cA mobile App Services, você pode aproveitar:

• uma estrutura fácil de usar que possibilita que recursos de mensagens avançados sejam adicionados a qualquer aplicativo.

• comunicação segura entre os usuários.

• ApIs com base em padrões.

• SDKs móveis nativos para maximizar a produtividade do desenvolvedor.

• customização e extensibilidade ilimitadas usando diretivas de gateway.

Armazenamento A habilidade de armazenar dados de maneira segura é fundamental para qualquer aplicativo móvel. o cA mobile App Services oferece um serviço de armazenamento de dados localmente criptografados para dados em repouso. Dependendo das preferências do desenvolvedor do aplicativo, é possível usar o armazenamento na nuvem privado e seguro para o armazenamento fora do dispositivo.

os serviços de armazenamento incluem armazenamento de dados na nuvem e local fáceis de usar para os desenvolvedores por meio de ApIs com base em padrões e SDKs móveis nativos, além de permissões de acesso a dados no nível do aplicativo, grupo e usuário.

Além disso, você pode usar os serviços de armazenamento do cA mobile App Services para:

• possibilitar que os desenvolvedores de aplicativos se concentrem na entrega de valor comercial enquanto o cA mobile App Services lida com a persistência dos dados.

• criptografar e armazenar dados no dispositivo.

• configurar permissões fáceis de usar no nível do aplicativo, grupo e usuário.

• Aproveitar ApIs com base em padrões.

• possibilitar SDKs móveis nativos para maximizar a produtividade do desenvolvedor.

• oferecer customização e extensibilidade ilimitadas usando diretivas de gateway.

Segurança A segurança é um dos aspectos mais importantes dos aplicativos móveis, especialmente com a introdução de dispositivos mais conectados e pela Iot, onde as empresas dispõem de menos opções para controlar o fluxo de dados.

A base da segurança dos aplicativos é saber algo sobre o contexto do aplicativo, do usuário e dos dispositivos usados. Somente depois que a empresa puder identificar e autenticar as diversas entidades, ela poderá começar a discutir a segurança. Além disso, o conceito de autorização de acesso a um recurso também deve ser abordado. os desenvolvedores

Figura 6

mensagens do usuário para dispositivo, grupo, tópico ou usuário

Figura 7

Armazenamento com criptografia local

ca.com/br

Page 11: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

11 | DocumEntAção técnIcA: cA moBILE App SERvIcES

de aplicativos que usam o cA mobile App Services podem se valer do cA mobile ApI Gateway para oferecer estruturas de segurança usando oAuth, openID connect e pKI (public Key Infrastructure - Infraestrutura de chave pública). o uso de um sistema com base em tokens individualmente emitidos para usuários e dispositivos oferece mais flexibilidade para as diretivas de acesso à ApI.

não apenas o cA mobile ApI Gateway emite os tokens, mas também pode rastrear os relacionamentos entre os usuários, aplicativos e dispositivos. o cA mobile App Services serve como um complemento desse recurso que controla as diretivas de grupo, a publicação-assinatura e as mensagens usando os recursos subjacentes do cA mobile ApI Gateway para aplicar as diretivas. outros recursos incluem uma plataforma com base no cA mobile ApI Gateway para solucionar aspectos de segurança comuns (com oAuth, openID connect e pKI); integração de serviço avançado de avaliação de risco de autorização; permissões com base em oAuth; e SSL (Secure Sockets Layer) mútua.

com os serviços de segurança do cA mobile App Services e do cA mobile ApI Gateway, você pode capacitar os desenvolvedores de aplicativos para se concentrarem em criar aplicativos mais interativos, práticos e seguros: o cA mobile ApI Gateway cuida da segurança enquanto o cA mobile App Services lida com as funcionalidades de back-end.

SDKs e ApIs inteligentes em todo lugaros desenvolvedores de aplicativos esperam encontrar SDKs disponíveis em seu ambiente de desenvolvimento preferido, o que significa que os SDKs devem ter uma boa integração com o Xcode e o Android Studio. Isso ajuda a garantir máxima flexibilidade para que os clientes do cA mobile App Services e do cA mobile ApI Gateway continuem a usar seu IDE preferido e possam simplesmente extrair o SDK e soltar as bibliotecas do cA mobile App Services nos projetos de aplicativos conforme a necessidade. A capacidade de ampliar a plataforma do cA mobile App Services por meio de ApIs abertas no lado do servidor permite que os desenvolvedores de aplicativos promovam uma fácil integração e interoperabilidade com os sistemas existentes.

os recursos de SDK inteligente oferecem métodos convenientes para os desenvolvedores de aplicativos, terminais de ApI REStful e SDKs para plataformas Android e ioS, além da capacidade de extensão por ApIs e SDKs.

com o cA mobile App Services, você pode acelerar o desenvolvimento e levar aplicativos móveis corporativos ao mercado mais depressa e em maior quantidade, além de aprimorar a experiência do desenvolvedor oferecendo ApIs em qualquer lugar.

ca.com/br

Page 12: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

12 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Recurso Descrição Benefícios

OAuth 2.0 • Suporte ao fluxo de senha para autorização de usuários• Fluxo de credencial de cliente para autorização de

aplicativos

• Autorização no nível do aplicativo e do usuário e com base em padrões

Registro de cliente dinâmico

• credenciais exclusivas por instância de aplicativo • Suporte a várias instâncias de aplicativos implantados em diferentes dispositivos

OpenID Connect • Autenticação de usuário com base em token com JSon Web token (JWt)

• Autenticação de usuários com base em padrões para aplicativos móveis

Suporte a PKI • Emissão de certificados assinados no momento do registro do dispositivo

• criptografia de canal de comunicação para dispositivos móveis

Logon social • Fluxo de logon social orquestrado pelo cA mobile ApI Gateway para aplicativos da web ou com base em SDK

• Ingresso simplificado de usuários em aplicativos B2c com camadas opcionais de parâmetros de controle de acesso adicionais

SSO entre dispositivos • compartilhamento de sessão de usuário entre dispositivos adjacentes

• Experiência de usuário avançada para aplicativos que operam em vários dispositivos

SSL mútua • Autenticação bidirecional entre clientes e o cA mobile ApI Gateway

• consumo seguro de ApIs por meio de segurança com base em pKI

Geolocalização • o SDK pode oferecer parâmetros de locais com solicitações• Geolocalização possibilitada por variáveis de contexto na

diretiva da ApI

• melhor contexto para segurança da ApI

Navegador corporativo • Acesso a aplicativos da web de terceiros por meio de um componente de navegador integrado com um modelo de segurança nativo

• Acesso transparente entre aplicativos nativos, híbridos e da web

Caixa de diálogo de logon personalizado

• caixa de diálogo de credenciais de usuário aprimorada para um maior controle

• maior flexibilidade do desenvolvedor e experiência de usuário aprimorada

Samsung KNOX • crie ou exclua recipientes com comandos remotos• Instale e remova aplicativos no recipiente• Limpe remotamente o dispositivo ou o recipiente

• Gerenciamento de recipiente KnoX para uma maior segurança da ApI

Samsung Attestation • Especifique a confirmação como condição na diretiva de ApI

• Segurança de ApI aprimorada para B2E (Business-to-Employee - Empresa para Funcionário) e B2c

Samsung TIMA Keystore

• Armazém seguro protegido por hardware para chaves e tokens

• melhor segurança no dispositivo

Integração avançada da avaliação de risco de autorização

• possibilita o cálculo de risco com base no contexto de solicitação da ApI

• Diretiva de segurança mais forte e flexível

Seção 4

CA Mobile API Gateway: recursoso cA mobile ApI Gateway oferece um pacote de serviços de segurança para desenvolvedores do cA mobile App Services conforme mostrado a seguir. você se beneficiará de uma segurança de primeira implantada em aplicativos que foram baixados por milhões de usuários e enviados para milhões de dispositivos móveis.

ca.com/br

Page 13: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

13 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Seção 5

Arquiteturavisão geral do sistemao cA mobile App Services baseia-se na plataforma de gerenciamento de ApIs da cA para levar uma integração de ApIs líder no setor para a empresa e o usuário móvel.

SDKs de clientevisão geral do sistemaos SDKs do cA mobile App Services ampliam os SDKs do mAG, os quais oferecem funcionalidades de segurança com a funcionalidade oAuth, openID connect e pKI. Além disso, o SDK do mAG oferece novos recursos de segurança que são exigidos para o cA mobile App Services, tais como a criptografia de dados locais e a criptografia de carga de implantação de mensagens.

Figura 8

visão geral do cA mobile App Services

Figura 9

visão geral do SDK do cA mobile App Services

ca.com/br

Page 14: Acelere o desenvolvimento de aplicativos móveis ... · PDF fileKits de Desenvolvimento de Software) ... mesmo assim, poucas soluções oferecem um sistema de mensagens completamente

14 | DocumEntAção técnIcA: cA moBILE App SERvIcES

Conecte-se à CA Technologies em ca.com/br

A cA technologies (nASDAQ: cA) cria software que acelera a transformação das empresas e permite que elas aproveitem as oportunidades da economia dos aplicativos. o software está no cerne de todas as empresas, em todos os setores. Do planejamento ao desenvolvimento e do gerenciamento à segurança, a cA está trabalhando com empresas de todo o mundo para mudar a maneira como vivemos, fazemos negócios e nos comunicamos – usando dispositivos móveis, as nuvens privada e pública e os ambientes distribuídos e de mainframe. obtenha mais informações em ca.com/br.

copyright © 2016 cA. todos os direitos reservados. todas as marcas comerciais, nomes de marcas, marcas de serviço e logotipos aqui mencionados pertencem às suas respectivas empresas. Este documento não contém nenhuma garantia e é fornecido apenas para fins informativos. cS200-183509

Seção 6

Benefícios para a empresa e para o desenvolvedoro cA mobile App Services consiste em serviços móveis essenciais para o desenvolvedor corporativo, apresentados por meio de ApIs e SDKs seguros e simples. os serviços móveis, como gerenciamento de usuários, grupos ad-hoc, publicação-assinatura, mensagens e armazenamento, são importantes para o desenvolvedor de aplicativos moderno, que os usa para:

• Escrever aplicativos modernos que possam se relacionar com o ambiente e com dispositivos próximos que aproveitam tecnologias com base em padrões.

• Escrever aplicativos reativos que podem utilizar a propagação de dados e eventos quase em tempo real por meio de recursos de publicação-assinatura enquanto controlam o fluxo de mensagens.

• criar grupos ad-hoc que podem ser usados para aprimorar o compartilhamento em aplicativos corporativos e, ao mesmo tempo, preservar a conformidade na infraestrutura de identidade.

• Aproveitar a segurança integrada ao aplicativo de fábrica para dados em repouso e dinâmicos.

os SDKs de código aberto oferecem essas vantagens e dão ao desenvolvedor flexibilidade para alterar o código da forma que desejar. Ao usar ApIs abertas e bem-documentadas, o desenvolvedor pode facilmente fazer a integração a outros sistemas conforme a necessidade. Ao aproveitar padrões abertos, como mQtt 3.1.1, ScIm 2.0, oAuth 2.0, openID connect e pKI, os desenvolvedores podem implementar facilmente a segurança e integrar o aplicativo a outros sistemas.

As empresas que implementam o cA mobile App Services podem basear suas iniciativas de aplicativos móveis e de Iot em uma fundação sólida. com base nos melhores produtos de gerenciamento de ApIs do setor, a abundância de recursos que tratam de casos de uso tradicionais de gerenciamento de ApIs oferece uma combinação única para o projeto de aplicativo moderno. Embora a segurança seja um problema constante em muitas plataformas, o cA mobile App Services aproveita os modelos de segurança existentes que foram desenvolvidos para os requisitos mais rigorosos nos setores financeiro, de saúde e militar.

Acelere seu desenvolvimento de aplicativos móveis e de Iot com o cA mobile App Services. Saiba mais e comece visitando o site http://www.ca.com/mobileapps ou o site do desenvolvedor http://mas.ca.com.