Nossa SAP Cloud Platform oferece a capacidade de desenvolver e executar aplicativos multilocatários. Os aplicativos multilocatário permitem que você atenda separadamente vários clientes de diferentes organizações dentro da estrutura de uma solução fornecida pelo provedor. Cada cliente é chamado de inquilino. Ele acessa o aplicativo através da URL alocada de um inquilino específico - dessa maneira os usuários são isolados um do outro.
Em vários artigos, abordaremos os seguintes tópicos:
Parte 1. Multilocação no cenário do SAP Cloud Platform
Parte 2. Fazendo Upload da Solução MTAR para a Plataforma, Vinculando o Banco de Dados e Criando Assinaturas para Inquilinos, Configurando a Subconta do Provedor
Parte 3. Serviço de Persistência - inicialização e isolamento de dados
Parte 4. Gerenciamento de autenticação de identidade - Configurando o inquilino de serviço
Parte 5. SAP Cloud Connector - instalando e configurando um serviço para conectar-se a um sistema local
Parte 6. Configurando o serviço Conectividade e testando um aplicativo multilocatário
Parte 7. Fiori Launchpad - usando o serviço do Portal, configuração de bloco para aplicativo multilocatárioNota:Este artigo usa a conta global (produtiva) do SAP Cloud Platform. Para executar o script, os seguintes serviços devem estar conectados adicionalmente na conta:
- Para a subconta do provedor de aplicativos - SAP HANA, SAP Cloud Platform Portal - pelo menos uma cota deve ser alocada para iniciar um aplicativo Java (cota Java);
- Para a subconta do cliente: SAP Cloud Platform Portal, Autenticação de identidade do SAP Cloud Platform.
Parte 1. Multilocação SCP e revisão da soluçãoO SAP Cloud Platform é uma plataforma para o desenvolvimento e o lançamento de aplicativos em nuvem, incluindo aplicativos com muitos inquilinos, de modo que seus serviços suportam a multilocação.
Você acha que os clientes ficarão felizes se os dados que eles armazenam no seu aplicativo SaaS estiverem disponíveis para outros clientes? Esta é uma violação clara do isolamento de dados.
Esse problema é resolvido fornecendo a cada cliente um ID de inquilino exclusivo. Como o aplicativo é implantado diretamente do provedor, o cliente deve estar inscrito nesse aplicativo para obter acesso a ele. Isso significa que o cliente não precisa copiar o aplicativo para sua conta, apenas se inscrever, após o qual o cliente recebe uma URL especial para um inquilino específico. Assim, quando o aplicativo é iniciado por esse URL dedicado, o usuário é identificado por um identificador de inquilino exclusivo.
Benefícios de aplicativos multilocatários:
- Menor custo total de propriedade (TCO): compartilhando recursos de computação e custos operacionais entre clientes, o custo total de propriedade de um aplicativo é reduzido. A economia de custos aumenta à medida que o número de clientes atendidos pelo aplicativo multilocatário aumenta;
- Eficiência operacional: atualizações de aplicativos e correções de erros se aplicam a todos os inquilinos, atualizando a instância do aplicativo do fornecedor;
- Escalabilidade: atendimento rápido ao cliente. Para acessar o aplicativo, o novo cliente precisa apenas criar uma assinatura;
- Configurabilidade: permite que os clientes configurem sua própria reserva de usuários que podem usar o aplicativo, seus próprios serviços de back-end etc., conforme exigido pelo aplicativo.
Considere a diferença entre as subcontas do cliente e do provedor em uma conta global do SCP:

Conforme mostrado no diagrama, duas subcontas são implantadas na conta global do SCP - a subconta do provedor e a subconta do cliente.
A subconta do provedor contém a lógica de negócios do aplicativo, sua interface e um banco de dados que armazena os dados do cliente isolados um do outro. Os aplicativos realmente são executados nessa conta.
Como já mencionado, o cliente acessa o aplicativo assinando-o. Observe que os aplicativos não são copiados ou iniciados dentro da conta do usuário. Dentro da subconta do cliente, é possível adicionar configurações que se aplicam apenas a esse consumidor. Por exemplo, você pode configurar o Identity Provider como um repositório de usuários para aplicativos da plataforma em nuvem. Ou configure caminhos de destino que possam apontar para serviços internos em execução no cenário do cliente (por exemplo, você pode acessar dados no sistema local).
Agora vamos falar sobre multilocação nos serviços SCP.
a) Serviço de persistênciaExistem três maneiras de obter a multilocação neste serviço:
1. Coluna separadora. Este método usa uma coluna específica na tabela para garantir o isolamento dos dados. Nesse caso, os usuários podem usar o mesmo esquema. Mas os dados são diferenciados usando um identificador de inquilino dedicado para cada cliente. Para garantir o compartilhamento de dados no aplicativo, cada instrução SQL deve incluir um identificador de inquilino.
2. Tabela (s) em um design. Esse método permite que os clientes de aplicativos isolem seus dados em uma ou mais tabelas de inquilinos específicos. Isso é obtido através da criação de uma tabela ou esquema no banco de dados para cada cliente. O discriminador da tabela do cliente determina como distinguir essas tabelas das tabelas de outros clientes. As tabelas podem estar no mesmo padrão e usar um prefixo ou sufixo para distingui-las; ou eles podem estar em um esquema separado usando o discriminador de cliente da tabela do esquema.
3. A separação dos esquemas. O isolamento dos dados do cliente, neste caso, é obtido armazenando tabelas em diferentes esquemas.
b) Autenticação de identidade
A autenticação de identidade é uma solução baseada em nuvem para gerenciar o ciclo de vida de aplicativos SCP e, se necessário, aplicativos locais. Permite configurar autenticação, logon único para usuários e assim por diante. Quando o serviço está conectado, o administrador da conta recebe um inquilino, dentro do qual o aplicativo está configurado e a autorização do usuário é gerenciada. Este serviço fornece um provedor de identidade para o SCP.
A subconta do cliente é configurada para um provedor específico, no qual os usuários são definidos, as funções são configuradas e o acesso ao aplicativo do provedor no qual o cliente está inscrito está configurado. As funções são descritas no aplicativo do provedor. Assim, o isolamento dos usuários é alcançado.
c) Conectividade
O cliente pode configurar o acesso aos dados no sistema local. Usando uma ferramenta como o SAP Cloud Connector, você pode conectar-se com segurança a um aplicativo ou sistema local que fornece determinados dados. Dentro de sua subconta, o cliente configura o caminho de destino para o sistema local descrito no Cloud Connector. O nome do caminho de destino é indicado no aplicativo do provedor - assim, quando o cliente acessa o aplicativo, os dados do sistema local do cliente são transferidos para o aplicativo e visualizados.
Passamos à revisão do cenário, cuja descrição ocorrerá na estrutura deste artigo.
A SAP possui uma empresa parceira confiável, especializada no fornecimento de soluções para o setor de petróleo e gás. Vamos chamá-lo de ITeLO Consulting. Esta empresa usa o SAP Cloud Platform para criar e iniciar seus aplicativos em nuvem. A ITeLO Consulting prefere fornecer seus aplicativos como SaaS. Nesse modelo, o software é fornecido como um serviço e está disponível para os clientes via Internet.
A empresa desenvolveu um painel de monitoramento da poluição que ajuda as empresas de petróleo e gás a comparar os níveis de poluição do ar em uma planta e em uma cidade. Essa decisão despertou o interesse de algumas empresas de petróleo e gás que desejam tomar medidas para evitar a poluição.
A ABC PetroCorp e a XYZ EnergyCorp são duas empresas de petróleo e gás que compram esta solução da ITeLO.
Robert ITE, que é o arquiteto deste projeto, trabalha na ITeLO Consulting. A empresa comprou um pacote SAP Cloud Platform com os serviços necessários para criar este aplicativo. O cenário de Robert é desenvolver um aplicativo SaaS com vários inquilinos e disponibilizá-lo aos seus clientes - ABC PetroCorp e XYZ EnergyCorp. ” Emily é uma funcionária de TI da ABC PetroCorp. Ela é designada para trabalhar neste projeto com Robert.
A arquitetura da solução é apresentada abaixo:

A subconta do provedor, neste caso, será a ITeLO Consulting, e as subcontas dos clientes que assinam o aplicativo serão ABC PetroCorp e XYZ EnergyCorp. As configurações nas subcontas do cliente serão semelhantes, portanto, consideraremos apenas a configuração do cliente ABC PetroCorp.
Descrição da conta:
1) ITeLO Consulting - a conta do provedor na qual os aplicativos de banco de dados, lógica de negócios e interface do usuário estão em execução.
Base de dados:
As informações de poluição do ar de cada planta são armazenadas no banco de dados SAP HANA. Os dados de diferentes clientes são armazenados separadamente, usando a função de isolamento de inquilino fornecida pela JPA.
Lógica de negócios:
A lógica de negócios é definida em um aplicativo Java em execução na subconta do provedor. Uma instância de aplicativo Java é usada por diferentes clientes. Cada usuário assina este aplicativo Java e recebe uma URL exclusiva para acessar o aplicativo. Como o aplicativo é acessado usando esse URL, o SCP recupera o identificador de inquilino usado na lógica do aplicativo.
Interface do usuário:
A lógica da interface do usuário é definida no aplicativo HTML5 em execução na subconta do provedor. Como em um aplicativo Java, uma instância do aplicativo HTML5 é executada para diferentes clientes. O acesso do cliente ao aplicativo é realizado usando uma URL exclusiva para acessar o aplicativo.
2) ABC PetroCorp - uma subconta de cliente na qual as assinaturas são criadas, configurações específicas de um provedor de identidade (IdP) são criadas e o acesso a serviços locais é fornecido.
Os aplicativos Java e HTML5 não são implantados ou copiados para esta conta.
Gerenciamento de identidade e acesso:
O acesso ao aplicativo deve ser restrito aos funcionários da ABC PetroCorp. A ABC PetroCorp possui seu próprio provedor de autenticação de identidade (SAP Identity Authentication), que contém informações sobre os funcionários da empresa (nome, email, organização, função etc.). Está especialmente configurado para a subconta ABC PetroCorp, para que apenas os funcionários possam acessar os aplicativos nos quais estão inscritos.
Serviços de conectividade:
A ABC PetroCorp lançou serviços localmente que fornecem informações sobre suas plantas - o número de funcionários na planta, a localização da planta etc. Todas essas informações devem ser extraídas de seu cenário e fornecidas ao aplicativo usando o SAP Cloud Connector.
Parte 2. Fazendo Upload da Solução MTAR para a Plataforma, Vinculando o Banco de Dados e Criando Assinaturas para Inquilinos, Configurando a Subconta do ProvedorUm aplicativo multilocatário deve estar em execução na subconta do provedor. Robert, da ITeLO Consulting, é o administrador da conta e precisa concluir as seguintes etapas para instalar o aplicativo:
- Crie um arquivo de aplicativos contendo todos os seus artefatos;
- Faça o download do arquivo do aplicativo na sua conta do ITeLO Consulting;
- Inscrever o cliente ABC PetroCorp no aplicativo em execução na subconta do provedor;
- Definir o caminho para um serviço aberto em execução na Internet.
Predefinições:
- Você possui o Java 8 instalado;
- Eclipse Neon instalado com plugins para SAP CP ;
- O Eclipse possui o plug- in EGit instalado ;
- Baixe e descompacte a versão mais recente do SAP CP Java Web Tomcat 8 SDK ;
- Baixe e instale o MTA Archive Builder ;
- O banco de dados SAP HANA está conectado à conta SCP (para a subconta do provedor);
- Na subconta do provedor ITeLO Consulting, uma cota foi alocada para o lançamento de aplicativos Java (pelo menos uma unidade de computação não utilizada, mais sobre a alocação de uma cota aqui ).
Nota: a criação de várias subcontas em uma conta SCP global não é possível para uma conta de avaliação (avaliação).Para instalar um aplicativo multiétnico, este artigo usará um recurso SCP como "Soluções" (baixar soluções). Como alternativa, você pode carregar módulos de aplicativos individualmente na plataforma.
O código fonte do aplicativo Monitoramento da Poluição está localizado no
GitHub .
Primeiro, clonamos o projeto e o
carregamos na área de trabalho do Eclipse. Após a instalação bem-sucedida, o projeto aparecerá na área de trabalho, sua estrutura ficará assim:

O aplicativo consiste em vários módulos desenvolvidos usando várias tecnologias. Esses módulos devem ser instalados em diferentes ambientes de tempo de execução (por exemplo, Java, HTML5). Em vez de criar e carregar módulos separadamente, o SCP suporta a criação de um único aplicativo que contém módulos diferentes em um arquivo morto.
Conforme mostrado na arquitetura do aplicativo, a lógica de negócios é definida em um aplicativo Java e a lógica da interface do usuário é definida em um aplicativo HTML5. E agora, na pessoa de Robert, criaremos um arquivo de um aplicativo MTA (módulo múltiplo) para empacotar o aplicativo em um formato conveniente para o download na plataforma.
Para criar um arquivo morto com vários módulos de aplicativo, é necessário fazer o download de "mta.jar" e configurar o "MTA archive builder" (o link para a descrição da instalação do "MTA archive builder" é especificado na predefinição acima).
Os módulos de aplicativo multiuso são descritos no arquivo descritor do MTA (mta.yaml), esse arquivo está localizado na pasta raiz do projeto.

O arquivo mta.yaml contém informações sobre os módulos Java e HTML5 que serão criados durante o processo de construção do aplicativo. Abra o arquivo e ligue o banco de dados SAP HANA ao aplicativo Java, especificando o identificador do banco de dados no campo id.

Aqui id é o identificador do banco de dados em execução na subconta do provedor. Ele pode ser encontrado no painel de controle do SCP da conta do ITeLO Consulting em Persistence -> Databases Systems.

No nosso caso, o identificador de banco de dados em "mta.yaml" será indicado da seguinte maneira:

Salvamos as alterações e, abrindo a linha de comando, vamos para a pasta com o projeto de monitoramento da poluição e inserimos o seguinte comando:
java -jar [ mta.jar] –build-target=NEO build

Este comando iniciará o processo de criação do aplicativo no arquivo MTA.
Após a montagem bem-sucedida, o arquivo MTA (poluiçãomonitoring.mtar) será gerado na pasta do projeto.

A próxima etapa é instalar o arquivo MTA (poluiçãomonitoring.mtar) na subconta do ITeLO Consulting. Isso pode ser feito usando o recurso "Soluções" fornecido no painel de controle do SCP. Para fazer isso, vá para a guia "Soluções" e clique no botão "Implementar".

Na caixa de diálogo exibida, vá para o local do arquivo poluiçãomonitoring.mtar clicando no botão Procurar no campo MTA Archive e selecione-o, depois clique em Deploy.

Depois de baixar com êxito o arquivo MTA no painel de controle da conta do ITeLO Consulting, você verá o seguinte:
• Na guia "Aplicativos Java", o aplicativo Java em execução "monitoração da poluição" será exibido;

• O banco de dados será automaticamente vinculado ao aplicativo Java. Para verificar, vá para o aplicativo Java e selecione a guia "Configuração" -> "Ligações de busca de dados";

• Na guia "Aplicativos HTML5", o aplicativo HTML5 em execução "monitoração da poluição" será exibido.

Agora, Robert precisa criar uma subconta chamada ABC Petro Corp para o cliente.
Vá para sua conta global do SCP e selecione "Nova subconta" na guia "Subconta".

Na caixa de diálogo exibida, digite o nome da subconta, selecione o ambiente (Neo) e a região em que a conta global e, consequentemente, a subconta do provedor estão localizadas. Depois clique em "Criar".

Agora, outra subconta aparecerá na conta global - a subconta do cliente.
O próximo passo é criar uma assinatura na conta do cliente ABC Petro Corp para aplicativos em execução na conta do provedor. Para fazer isso, use o cliente do console para o ambiente Neo. Como instalá-lo é descrito aqui.
No cliente do console para Neo, digite o seguinte comando:
neo subscribe –account << ABC_PetroCorp>> -application << ITeLO_consulting>>:pollutionmonitoring -user << >> -host << >>
O ID da subconta pode ser encontrado na guia "Visão geral" -> "Informações da subconta".

O ID do usuário é indicado na guia "Informações do usuário", localizada no menu suspenso no canto superior direito do painel de controle do SCP.

Hosts para todas as regiões do ambiente Neo são descritos
na documentação .
Para assinar o aplicativo HTML5, use o painel de controle do SCP. Iremos para a subconta do cliente ABC Petro Corp e selecionaremos a guia "Assinaturas" -> "Nova assinatura" (para HTML5).

Na caixa de diálogo, selecione a subconta do provedor e o aplicativo HTML5 dentro dele e clique em "Salvar".

Agora, o cliente está inscrito nos aplicativos Java e HTML5 fornecidos pelo provedor, e isso é exibido no painel de controle da conta da ABC Petro Corp.

Um aplicativo para monitorar a poluição permite exibir dados sobre a poluição da planta e da cidade.
Os dados de contaminação da planta estão localizados no sistema local do cliente. Informações sobre o nível de poluição na cidade podem ser obtidas através do serviço de código aberto, disponível via Internet. Esse serviço pode ser o OpenAQ. Um aplicativo de monitoramento de poluição pode acessar esse serviço descrevendo o caminho de destino no painel de controle do SCP.
Este serviço será usado pela ABC Petro Corp e outros clientes em potencial, portanto o endereço de destino será adicionado à conta do provedor de consultoria ITeLo.
Para um aplicativo Java, o caminho de destino chamado openaq - api - dest é descrito no arquivo web.xml.

Este caminho de destino é indicado na classe "PollutionDataService" (arquivo "PollutionDataService.java").

Após a procura pelo caminho de destino, todas as chamadas do código Java para o serviço OpenAQ são iniciadas por ele.
O arquivo "open-api-dest" do caminho de destino está localizado dentro da pasta "Fornecedor de destinos", localizada dentro do projeto "monitoração da poluição".

Este arquivo contém a URL para o serviço OpenAQ.

Esse caminho de destino deve ser carregado na subconta do provedor de consultoria ITeLo. Para fazer isso, vamos para a subconta ITeLo Consulting, para a guia "Aplicativos Java" e selecione o aplicativo "monitoramento de poluição".
Em seguida, selecione a guia "Configuração" → "Destinos" e clique no botão "Importar destino".

Na caixa de diálogo exibida, especifique o caminho para o arquivo "open-api-dest". Depois disso, o caminho de destino será configurado no painel de controle do SCP. Clique no botão "Salvar". O caminho de destino terá esta aparência em uma plataforma em nuvem:

Este serviço está disponível através de https, então você precisa estabelecer uma conexão segura. Isso pode ser feito usando o serviço de armazenamento de chaves do SCP. O projeto de monitoramento de poluição, baixado do GitHub, já possui arquivos com as chaves: jssecacerts.jks e cacerts.jks. Eles precisam ser carregados na subconta do cliente ABC Petro Corp.
Para fazer isso, usamos novamente o cliente do console para o ambiente Neo.
No cliente do console para Neo, digite os seguintes comandos:
neo upload-keystore –account << ABC_PetroCorp>> –user << >> –location << jssecacerts.jks>> –host << >>
neo upload-keystore –account << ABC_PetroCorp >> –user << >> –location << cacerts.jks>> –host << >>
Esses arquivos (“jssecacerts.jks” e “cacerts.jks”) estão localizados na pasta “KeyStore Services” do projeto “monitoração da poluição”.
Parte 3. Serviço de Persistência - inicialização e isolamento de dadosVários clientes estão interessados na aplicação da ITeLO Consulting. Esse aplicativo multilocatário deve garantir que os dados da ABC PetroCorp sejam completamente isolados dos dados de outros clientes no banco de dados (por exemplo, dados da XYZ EnergyCorp). Isso é muito importante para garantir a segurança dos dados do cliente e do aplicativo.
Robert, da ITeLO Consulting, quer que seu aplicativo isole o armazenamento de dados de seus clientes e está interessado em saber como isso pode ser alcançado.
Para obter o isolamento dos dados, precisamos determinar o grau de isolamento, ou seja, isolamento no nível da tabela (armazenar dados em tabelas diferentes em um esquema), no nível do esquema (armazenar dados do cliente em esquemas diferentes), no nível do inquilino (armazenar dados do cliente em diferentes inquilinos do banco de dados). O SAP Cloud Platform Persistence Service, em conjunto com o JPA (Java Persistence API) e o EclipseLink, suporta a implementação desses métodos de isolamento de dados.
Existem três maneiras de obter a multilocação no nível do banco de dados. Examinamos esses métodos na parte 1.
Na segunda parte, vamos nos concentrar em um método chamado "separador de colunas". Será ele quem será usado por Robert para isolar os dados no nível do banco de dados em sua decisão.
Usando uma coluna separadora:
Nesta abordagem, um esquema de banco de dados é distribuído entre todos os usuários do aplicativo. O ID do inquilino pode ser usado como o valor na coluna delimitadora. O trecho de código é apresentado abaixo.

Como etapa preparatória, também inicializamos os dados que serão usados no aplicativo de monitoramento de poluição.
Etapa 1: verifique a descrição da coluna separadora no código do aplicativoNesta fase, veremos como o modelo de dados do aplicativo é usado para fornecer multilocação no nível do banco de dados.
Para fazer isso, vejamos
o projeto baixado do GitHub , que já está carregado na área de trabalho do Eclipse.
A seguir, veremos alguns arquivos do projeto. Você pode fazer isso através do ambiente Eclipse ou fazer o download do projeto, descompacte-o em um local conveniente e abra os arquivos separadamente. Vamos usar a segunda opção.
Um projeto descompactado é o seguinte:

Iremos para o arquivo "BaseObject.java" do projeto localizado no caminho
"/pollutionmonitoring/java/src/main/java/com/sap/hana/cloud/samples/pollutionmonitoring/model/BaseObject.java" e o
abriremos usando o editor (por exemplo, Notepad ++).

Neste arquivo, verificamos a descrição do método "Coluna separadora". Aqui está o que parece:

Agora, passamos ao arquivo "web.xml" localizado no caminho "/pollutionmonitoring/java/src/main/webapp/WEB-INF/web.xml".

Verifique se a fonte de dados (banco de dados) está anexada ao aplicativo como uma fonte padrão (banco de dados padrão). No arquivo web.xml, fica assim:

Este exemplo mostra como a multilocação é implementada em um aplicativo de monitoramento de poluição.
Etapa 2: verificar a configuração do servlet de inicialização de dadosRobert sabe que os clientes de seu aplicativo precisarão baixar dados para usá-los. Então, ele criou um servlet para inicializar dados que clientes (como Emily) podem usar para inserir dados em um aplicativo de monitoramento de poluição.
Neste ponto, veremos como a publicação do servlet de inicialização de dados está configurada.
O servlet é descrito no arquivo "DataInitializationServlet.java", localizado no projeto no caminho
"/pollutionmonitoring/java/src/main/java/com/sap/hana/cloud/samples/pollutionmonitoring/api/DataInitializationServlet.java" .

O método de sua publicação está indicado no arquivo "web.xml" (
"/ poluiçãomonitoring / java / src / main
/webapp/WEB-INF/web.xml " ).

Abra esse arquivo e verifique se o servlet para carregar dados no aplicativo de monitoramento de poluição foi publicado usando o URL “/ initialize”. É assim:
Etapa 3. Usando o servlet para inicializar os dados de poluição do ABC PetroCorp (cliente)Emily da ABC PetroCorp pode acessar o aplicativo de monitoramento de poluição usando a assinatura criada.
O aplicativo Monitoramento da Poluição usa dois tipos de dados:
Dados de poluição: leia de fontes como APIs externas, sensores de poluição etc.
Os dados da planta geralmente são lidos em sistemas locais de clientes - como sistemas ERP.
1) Nesta fase, criaremos dados de poluição usando o servlet de inicialização de dados localizado no projeto. Esses dados serão armazenados no banco de dados HANA no SAP CP, que está vinculado ao aplicativo na conta do provedor.
2) Os dados da instalação são lidos pelo aplicativo no sistema local, ou seja, eles não são armazenados no banco de dados HANA no SAP CP. Isso será discutido na quinta parte do artigo “SAP Cloud Connector - Configurando e configurando o serviço para conectar-se ao sistema local”.
Neste ponto, carregamos os dados de poluição no aplicativo "por assinatura". Para isso, será usado o servlet “Inicialização de Dados”, localizado no projeto e que pode ser usado para inserir dados preparados no banco de dados HANA.
Vamos ver como os dados preparados são exibidos e como podem ser inicializados usando o servlet. Para fazer isso, voltamos ao arquivo “DataInitializationServlet.java”, localizado no projeto no caminho
“/pollutionmonitoring/java/src/main/java/com/sap/hana/cloud/samples/pollutionmonitoring/api/DataInitializationServlet.java” e abra.
Aqui podemos ver os dados preparados para o ABC PetroCorp e outro cliente (XYZ EnergyCorp).

Inicializamos os dados de poluição do ABC PetroCorp chamando o servlet de Inicialização de Dados.
Iremos ao painel de controle da subconta do cliente ABC PetroCorp. No nosso caso, a conta global está localizada na região da Europa (Rot), o acesso a ela é realizado
por esse link .

No painel de controle da subconta, acesse a guia "Aplicativos -> Assinaturas" e selecione o aplicativo Java ao qual o cliente está inscrito.

Na guia "Visão geral", o aplicativo de URL será indicado, copie-o.

Abra uma nova janela do navegador, cole o URL do aplicativo copiado e adicione “/ initialize? Company = ABC PetroCorp” a ele. Depois disso, a inicialização será concluída e os dados deverão aparecer na tela, que serão enviados para o aplicativo.

Agora, inicializamos os dados de poluição do ABC PetroCorp no aplicativo de monitoramento de poluição do ITeLO.
No próximo artigo, falaremos sobre gerenciamento de identidades usando a autenticação de identidade - definindo o serviço de inquilino.