Gcp/Firebase/CloudFunctions/Basic認証
提供: 初心者エンジニアの簡易メモ
hostingでbasic認証の作り方
以下コマンドでfunctionsを作成する
firebase init functions
function/index.js
const functions = require('firebase-functions') const express = require('express') const basicAuth = require('basic-auth-connect') const app = express() app.all('/*', basicAuth(function(user, password) { return user === 'user1' && password === 'testtest'; })); app.use(express.static(__dirname + '/static/')) exports.app = functions.https.onRequest(app)
firebase.json
{ "hosting": { "public": "public", "rewrites": [ { "source": "**", "function": "app" } ], "ignore": [ "firebase.json", "**/.*", "**/node_modules/**" ] } }
プロジェクト直下にpublicディレクトリを作成
functions直下にstaticディレクトリを作成し、index.htmlなどのコンテンツを追加
cd functions npm install --save express npm install --save basic-auth-connect
デプロイする
firebase deploy
指定のファイルだけ認証したい場合(httpで直接アクセスすれば認証がかかってる)
app.all('/att.html', basicAuth(function(user, password) {
問題なく認証がかかってた。