2017-10-17 16 views
1

が私の角度のプロジェクトにfirebase管理者を追加しようとしているが、私は周りに得ることができないエラーを取得してFirebase管理を統合は(スクリーンショットを参照)アンギュラ4プロジェクト

here

npm install google-cloudをしましたが、それはちょうどより多くの結果エラー (アンドロイドから来て、私自身で把握しようとしているが、ここで私は何かが欠けてるし、正確に何を知っていない)

マイapp.component.ts

import {Component} from '@angular/core'; 

@Component({ 
selector: 'app-root', 
templateUrl: './app.component.html', 
styleUrls: ['./app.component.css'] 
    }) 
    export class AppComponent { 
constructor() { 
const admin = require('firebase-admin'); 
const serviceAccount = 
require("C:/Users/Pawel/Desktop/CODE/pamiAdmin3/src/app/serviceKey.json"); 

admin.initializeApp({ 
    credential: admin.credential.cert(serviceAccount), 
    databaseURL: 'https://pami-16c0f.firebaseio.com' 
    }); 
} 
} 
+3

admin SDKはサーバー上でのみ使用でき、エンドユーザーのアクセス用ではありません([Firebase Admin SDKをサーバーに追加する](https://firebase.google。 com/docs/admin/setup)のページ)。 – Jeff

+0

@Jeffはサーバーページであるべきです:... S – pb4now

+1

Admin SDKは、あなたが管理するNode.JSサーバーのような信頼できるサーバー環境でのみ使用できます。選択したユーザーにDBへのアクセスをより多くのアクセス権を与えるには、データベースのセキュリティルールによって達成する必要があります。 – Jeff

答えて

2

Node.jsとfirebase-adminを使用して管理APIを実装し、サーバーに展開する必要があります。あなたのAngularアプリは、何らかの管理機能を実行する必要があるときに接続することができます。 AngularアプリからサーバーにIDトークンを渡します。管理者SDKを使用して確認することで、発信者に必要な管理者権限があることを確認できます。

関連する問題