2017-02-16 7 views
2

現在、私の機能には一般公開されています。 APIゲートウェイのような何かを介してしかアクセスできないようにする方法はありますか?私はVNETを「ネットワーキング」ブレードを介して追加しようとしましたが、何もしなかったと思います(私はまだ関数を公開しています)...私は関数がプライベートネットワーク上のリソースにアクセスできるようにしています。私はIPをプライベートにするための設定で何も見ませんでした。私はネットワーキング関連の問題にあまり精通していないので、私が不明な場合は謝罪します。Azureの機能を一般公開できないようにするには?

+0

私はApp Service Environmentを使用していましたが、機能アプリケーションは「利用可能なアプリケーションタイプ」選択で利用できませんでした。 –

+0

@KaiWalter残念ながら、機能はそのUIにはリストされていませんが、機能Appのホスティングオプションとして「App Service Plan」を選択すると、トップレベルの作成が可能になります。 –

+0

も参照してください... http://stackoverflow.com/questions/43241431/azure-functions-can-you-use-web-config-restrictions-eg-ip-restrict-or-bas – SteveC

答えて

2

built-in keys supportは、このためのオプションを提供するためのものです。すべてのリクエストに、気になるリソースとだけ共有されるAPIキーを含めるように要求することができます。実際には、すべてのHTTPトリガー関数はデフォルトでキーを必要とします。この要件を削除することを明示的に選択する必要があります。

鍵はネットワーキングの解決策ではなく、鍵を漏らすと誰かがあなたのAPIにアクセスすることができます(鍵をロールするまで)。あなたは、VNetのサポートがポイントツーサイトであるということは正しいです。つまり、リソースにアクセスできますが、機能アプリはそれ自体は保護されていません。 Appサービス環境はこれを解決しますが、Kaiのオリジナルの質問に対するコメントは正しいですが、ASEはまだ関数には使用できません。

キーに加えて、App Service Authentication/Authorizationを使用して、AADサービスプリンシパルを要求することができます。これは事実上キーのようなものですが、AADの他のエンティティをモデリングする場合、追加の利点があります。あなたがこれを必要としていることを知っていなければ、私は鍵をつけるでしょう。

2

CORS機能では、Azure機能へのアクセスを制限できます。これを設定するには、CORSセクションのAzure Function Settingsリンクを確認してください。

+0

ブラウザでJavaScriptのみ動作しますか? – SteveC

関連する問題