Google Cloud Functions docs を調べていますが、HTTPクラウド機能へのアクセスを特定のネットワークに制限することは可能ですか?誰もが無料の割り当てを使い果たすのを避けたいと思います。
Cloud Functions用のファイアウォールルールまたは同様のメカニズムはありますか?
現在、組み込みのセキュリティ制限があるとは思わない。
クォータの枯渇を回避するという点では、ある種の共有シークレットを使用してヘッダーまたはパラメーターを渡すことができます。固定文字列値でも、この問題を回避するのに役立ちます。
この記事は私に役立ちました。
https://cloud.google.com/solutions/authentication-in-http-cloud-functions
誰でも関数を呼び出すことができますが、関数がアクセスするリソースへのアクセス権を持つユーザーからの資格情報が含まれている必要があります。
その前に、おそらく本番環境には適さない非常に単純なことをしていましたが、公開するだけでセキュリティが少し向上しました。ペイロードにパスワードを指定して関数を呼び出し、それが関数でハードコーディングしたパスワードの1つと一致しない場合、403で失敗します。
Firebase Authenticationを使用して、クラウド機能に認証を追加できます。これを行う方法のgithubの例を次に示します。 https://github.com/firebase/functions-samples/tree/master/authorized-https-endpoint
ただし、認証コードは関数によって実行されるため、未承認のアクセスを拒否しても、無料のリソース許容量の一部が消費されることに注意してください。
Google Function Authorizer モジュールがあなたが探しているものかもしれません。 「Google Cloud HTTP Functionsのシンプルなユーザー認証および管理システム」を提供します。まだ多くのユーザーはいないようですが、プロジェクトは非常にシンプルなため、必要に応じて独自のソリューションを変更または実装するためのベースとして使用できます。