以前、Functions で IPアドレスの制限かけれるようにしてって Feedback したのですが、ステータスが Completed にupdateってメールが来てました♪
自身の Feedback を対応して頂けたので、設定方法 -2018/03版を紹介します。
今回お話しするIPの制限は、ホワイトリストの設定です。つまりアクセス許可したいIPアドレスを登録することで他のIPからアクセスできなくする設定です。
以前のブログ時点では App Service プランでしかIP制限がかけれませんでしたが、従量課金(Consumption)プランでも実現可能となりました。設定方法も Azure Portal に組み込まれたので簡単にできます。
IPアドレス制限の設定
作成した Functions App の プラットフォーム機能 > ネットワーク を開きます。
IP制限の構成 を開きます。
規則の追加 をクリックして、表示されたウインドウからホワイトリストとなる IPアドレスを設定することができます。
今試しているのは、HTTP Trigger の Function App なので、 POST MAN で適当にアクセスしてみます。ホワイトリストのIPだともちろん普通にレスポンスがありますが、それ以外のIPからアクセスすると、403になります。いい感じですね。
おわりに
2017年12月ごろからこのメニューが見えてた気がしますが、その時は、Functions の Proxy を経由させると死んだので、結局実用できなかった記憶が...
今回動作確認したら Functions の Proxy を経由しても想定通りの IP アドレス制限ができるようになっていました♪
参考
Restrict IPs in Azure Functions Proxies
I want IP restriction in Azure Functions Proxies. My customer has a security policy that IPs are whitelisted. Current solutions are to host AppServices plan or API management. This feature is essential for enterprise customers.