-
Notifications
You must be signed in to change notification settings - Fork 2
Gerar as Credenciais do Firebase
O PathsViewer utiliza o Cloud Firestore (parte do Firebase) para a funcionalidade de ingestão de dados em tempo real e o Maps JavaScript API. Para acessar esses serviços, é necessário configurar as credenciais do Firebase da seguinte forma:
- Acesse console.firebase.google.com (selecione a conta Google corretamente na barra superior)
-
PROJETO: Crie um projeto
- Nome: Escolha um nome para o projeto
-
Google Analytics: É possível ativar o GA para o projeto, caso desejado
- Configuração do Google Analytics: Se optou por ativar o GA, selecione a região para processamento de dados e aceite os termos de uso do GA
-
Cloud Firestore: Configure o serviço Cloud Firestore em Build > Firestore Database
- Crie um banco de dados
- Use as regras de segurança no modo de testes
🚨 O modo testes vai deixar o banco de dados exposto para leitura e escrita a qualquer usuário durante 30 dias. Um usuário mal intencionado pode disparar um ataque de alto volume de dados produzindo altos custos
- Selecione a região de processamento dos dados. É recomendado que seja a mais próxima dos usuários da aplicação
-
Credenciais Firebase: Gere as credenciais do Firebase para o seu usuário em ⚙️ (ícone de engrenagem ao lado de Project Overview) > Configurações do Projeto
- Na aba Geral, vá em Seus Aplicativos e crie uma nova aplicação clicando no ícone
- Escolha um apelido para a aplicação
- Registre a aplicação
- Será gerado um bloco de código tal como abaixo
// Import the functions you need from the SDKs you need import { initializeApp } from "firebase/app"; import { getAnalytics } from "firebase/analytics"; // TODO: Add SDKs for Firebase products that you want to use // https://firebase.google.com/docs/web/setup#available-libraries // Your web app's Firebase configuration // For Firebase JS SDK v7.20.0 and later, measurementId is optional const firebaseConfig = { apiKey: "AIzaSy4AFgP6qOoqxV1kPlkuu8KmXrpnHphbLJc", authDomain: "paths-viewer-test-b72a3.firebaseapp.com", projectId: "paths-viewer-test-b72a3", storageBucket: "paths-viewer-test-b72a3.appspot.com", messagingSenderId: "945083194792", appId: "1:945083194792:web:229add19aeb3bc7bfbaf42", measurementId: "G-GTFMZ2XU49" }; // Initialize Firebase const app = initializeApp(firebaseConfig); const analytics = getAnalytics(app);
- Na raiz do projeto, copie o arquivo
.env.local.example
e nomeie para.env.local
. Substitua o valor das variáveis de acordo:-
GOOGLE_API_KEY
eFIREBASE_API_KEY
: use o valor deapiKey
-
FIREBASE_DATABASE_URL
: usehttps://{FIREBASE_PROJECT_ID}.firebaseio.com
, substituindoFIREBASE_PROJECT_ID
pelo valor deprojectId
-
FIREBASE_PROJECT_ID
: use o valor deprojectId
-
FIREBASE_AUTH_DOMAIN
: use o valor deauthDomain
-
FIREBASE_STORAGE_BUCKET
: use o valor destorageBucket
-
FIREBASE_MESSAGING_SENDER_ID
: use o valor demessagingSenderId
-
FIREBASE_APP_ID
: use o valor deappId
-
- Agora, na aba Contas de serviço, vá em Firebase Admin SDK
- Selecione Gerar uma Nova Chave Privada e faça o download
- Será feito o download de um arquivo JSON similar ao abaixo
{ "type": "service_account", "project_id": "paths-viewer-test-b72a3", "private_key_id": "0efb5253593652e8ea247b3f4d511c636125bbcd", "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQD5hAMzSc5EQP4r\n (... omitido por brevidade ...) \nc/UYenhuVcHj03YQa+g6asA=\n-----END PRIVATE KEY-----\n", "client_email": "firebase-adminsdk-de64i@paths-viewer-test-b72a3.iam.gserviceaccount.com", "client_id": "105472490822407004470", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-de64i%40paths-viewer-test-b72a3.iam.gserviceaccount.com" }
- No arquivo
.env.local
, substitua o valor das variáveis de acordo:-
FIREBASE_CLIENT_EMAIL
: use o valor declient_email
-
FIREBASE_PRIVATE_KEY
: use o valor deprivate_key
-
-
Serviço Google Maps: Por fim, para ativar a API do serviço Google Maps para a credencial gerada, acesse console.cloud.google.com (selecione a conta Google e projeto corretamente na barra superior)
- Busque por "Enabled APIs & Services" e selecione o resultado adequado
- Selecione a opção "Enable APIs and Services"
- Busque por "Maps JavaScript API" e selecione o resultado adequado
- Selecione "Enable"
- O arquivo
.env.local
resultante deverá ficar da seguinte forma, por exemplo:GOOGLE_API_KEY = "AIzaSy4AFgP6qOoqxV1kPlkuu8KmXrpnHphbLJc" FIREBASE_DATABASE_URL = "https://paths-viewer-test-b72a3.firebaseio.com" FIREBASE_PROJECT_ID = "paths-viewer-test-b72a3" FIREBASE_API_KEY = "AIzaSy4AFgP6qOoqxV1kPlkuu8KmXrpnHphbLJc" FIREBASE_AUTH_DOMAIN = "paths-viewer-test-b72a3.firebaseapp.com" FIREBASE_STORAGE_BUCKET = "paths-viewer-test-b72a3.appspot.com" FIREBASE_MESSAGING_SENDER_ID = "945083194792" FIREBASE_APP_ID = "1:945083194792:web:229add19aeb3bc7bfbaf42" FIREBASE_CLIENT_EMAIL = "firebase-adminsdk-de64i@paths-viewer-test-b72a3.iam.gserviceaccount.com" FIREBASE_PRIVATE_KEY = "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQD5hAMzSc5EQP4r\n (... omitido por brevidade ...) \nc/UYenhuVcHj03YQa+g6asA=\n-----END PRIVATE KEY-----\n"
⚠️ As credenciais exemplificadas nesse guia são fictícias e, logo, não são válidas no Firebase. Apesar disso, teve-se o rigor de utilizar valores idênticos ao formato gerado em condições reais, ajudando na melhor compreensão do usuário.
Esse projeto adere à licença MIT. Consulte o arquivo LICENSE para mais informações.
Copyright © INTRIG Research Group.