「Gcp/Firebase/CloudFunctions/Basic認証」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→hostingでbasic認証の作り方) |
(→hostingでbasic認証の作り方) |
||
| 行50: | 行50: | ||
指定のファイルだけ認証したい場合(httpで直接アクセスすれば認証がかかってる) | 指定のファイルだけ認証したい場合(httpで直接アクセスすれば認証がかかってる) | ||
app.all('/att.html', basicAuth(function(user, password) { | app.all('/att.html', basicAuth(function(user, password) { | ||
| + | |||
| + | 問題なく認証がかかってた。 | ||
==参考== | ==参考== | ||
2022年12月20日 (火) 13:36時点における最新版
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) {
問題なく認証がかかってた。
