Azure Functions Virtual Network Integration | Private Endpoints for Azure Functions

Поділитися
Вставка
  • Опубліковано 20 лип 2022
  • Azure Function VNET integration is supported by Premium Azure functions, App Service Plan minimum Basic tier and of course App Service Environment. When we create an azure function without any VNET integration, it will have a public IP address and it will be exposed to the internet.
    This Video will explain
    1. How we can secure the Azure function with VNET integration?
    2. How we can create a private endpoint to secure incoming traffic?
    3. How can we restrict outbound traffic from the Azure function to VNET?
    I will demonstrate this using App Service Plan Basic tier azure function with step by step process through the Azure portal.
  • Наука та технологія

КОМЕНТАРІ • 31

  • @edemfromeden5432
    @edemfromeden5432 Рік тому +1

    Hi Sri, thanks for the quality content. I have a question. What if my security policy require Storage Accounts to be private endpoint enabled ? During the Function App creation I’m asked to either select an existing Storage Account or let Azure create it for me. How would that work ?

    • @srigunnala
      @srigunnala  Рік тому +1

      Hello Edem, Thanks for checking out my video. We can create a function app with a secure storage account(private endpoint). We just need to enable the private endpoint for the storage account and place it in a VNET. Enable the outbound traffic from the function app to the same VNET.
      If you are looking to do it with an ARM template, you can refer to azure.microsoft.com/en-au/resources/templates/function-app-storage-private-endpoints/
      Hope this helps.
      Cheers,
      Sri.

    • @edemfromeden5432
      @edemfromeden5432 Рік тому

      @@srigunnala Yes, thank you :)! Let me ask you one more question. I'm not 100% sure I understand, the role VNet injection plays here. I mean, I can enable private endpoints for example for my storage account, and it is enough to have private endpoint enabled to address that Storage Account via a local IP from a subnet from a given VNet rather than having to take the internet route to talk to the storage accounts public IP. What is that different for Function Apps? Could you please help me understand that in more detail? I was kinda sure that VNet injection will already give the injected Azure services IP addresses from within the VNet/Subnet. Thanks again Sir and hope to see more from you :)!

    • @srigunnala
      @srigunnala  Рік тому

      @@edemfromeden5432 Private Endpoint for function App and injection a function app into VNET are two different things.
      When Private Endpoint is enabled for the function app, it can be accessed only from configured VNET ( traffic flow over Microsoft Backbone network).
      If you have an App Service Environment, you inject the function app into a virtual network, and access can be controlled using network security groups.
      Hope this helps!!
      Cheers,
      Sri.

  • @brettlindsley3543
    @brettlindsley3543 11 місяців тому +1

    Excellent video! It clarified a lot of the high-level concepts very quickly with a good relevant example.

    • @srigunnala
      @srigunnala  11 місяців тому

      Thank you! I am glad you found it helpful! Cheers, Sri!

  • @sruthireddy1979
    @sruthireddy1979 Рік тому +1

    very nicely explained... thank you :)

    • @srigunnala
      @srigunnala  Рік тому

      I'm Glad you liked it! Thank you!

  • @shashankgwl
    @shashankgwl Рік тому +1

    Nice explanation!!

  • @amaykulkarni4032
    @amaykulkarni4032 Рік тому

    Hi Sri,
    We have same Azure function private endpoint configuration as you have specified, how to call the azure function publicly like from Slack bot?
    Is there any other way to secure Azure functions?

  • @vishnukiran6116
    @vishnukiran6116 2 роки тому +1

    Good Sri, Awesome

  • @josealonsodev
    @josealonsodev 10 місяців тому +1

    Great content. It help me a lot

    • @srigunnala
      @srigunnala  10 місяців тому

      Thank you, I am glad it was helpful!
      Cheers,
      Sri.

  • @marsamuk
    @marsamuk 7 місяців тому

    Hi. In your setup, Is it possible to run a function to execute on the VM via private endpoint?

  • @vipuldabhi6971
    @vipuldabhi6971 Рік тому

    how to establish connection to key vault using private endpoint?if you could please create a video for that,
    also how we can implement function app premium, Storage and Azure key vault together using an ARM Template

  • @sandeshkarki8054
    @sandeshkarki8054 2 роки тому +1

    Cool.

  • @rifatp3780
    @rifatp3780 Рік тому

    in vnet integration delegated subnet is used for the Azure function app, but the storage account has private endpoint enabled & in that storage account networking needs to provide function app vnet & delegated subnet for whitelisting the function in storage account..but that will give error? can not use same subnet for the storage account private endpoint

    • @srigunnala
      @srigunnala  Рік тому

      Hello Rifat,
      Thank you for checking my video.
      In the demo, It is function app with an app service plan. Enabling a private endpoint for the storage account(table storage to retrieve the data) doesn't work.
      If we run the functions in an App Service Environment, we can deploy them directly into your virtual network. In this case, we can enable a private endpoint for PaaS resources(like storage accounts) and place them in the same VNET as functions so functions can access PaaS resources through a private endpoint.
      Hope this helps!
      Cheers,
      Sri.

  • @fruddinator
    @fruddinator Рік тому

    Nice one Sri! With the vnet integration for the azure function app I wasn't sure what subnet to use? Eg do I create a azurefunctionoutboundsubnet? You just used "default" so I guess that's ok?

    • @srigunnala
      @srigunnala  Рік тому

      Hello there,
      You can create your own subnet or use the default one. Just make sure you have proper NSG in place to facilitate required inbound/outbound traffic.
      Cheers,
      Sri.

  • @cloudykube8268
    @cloudykube8268 Рік тому +1

    Hey Sri, this is a great content and to the point. Can you suggest how we can connect to on-prem resources from azure function in this case ?

    • @srigunnala
      @srigunnala  Рік тому

      Hi there, Thank you!.
      if you have VNET in azure which is connected to onprem via VPN or express route, yes you can reach to onprem resources from Azure. We just need to route Azure Function outbound traffic via this VNET which can reach onprem. Also, based on what you want to achieve, there are other possible options as well.
      Cheers,
      Sri.

    • @victorgolda
      @victorgolda Рік тому

      @@srigunnala Hi Sri! Great content! thank you very much. Im trying to achieve what CloudyKube wants. Can you point me to the right direction in How to route outbound traffic via the VNET. I have a VPN Gateway connected to a Fortigate on premise and we have connection between on premise virtual machines and azure virtual machines but the azure functions cant reach the on premise servers. Thanks in advcance.

  • @desafioaceito1
    @desafioaceito1 2 роки тому +1

    What if you enable private endpoint before deploying the function code? It will become private, so i guess you will have to use a VPN to be able to deploy it, right?

    • @srigunnala
      @srigunnala  2 роки тому +1

      Really a good question! Unfortunately there is no easy way to it. One way is to
      1. We need to deploy Virtual Machine Scale Set (VMSS) in to the same virtual network(where private end point resides) and run the build agent on it.
      2. Configure CI/CD pipeline to use the build agent hosted on VMSS.
      Thanks,
      Sri.

    • @desafioaceito1
      @desafioaceito1 2 роки тому +1

      @@srigunnala Thanks!

  • @ravick4u
    @ravick4u 7 місяців тому

    Good video but you missed one of the important topic of inbound subnet and out bound subnet

  • @ggs6475
    @ggs6475 5 місяців тому

    Can you please advise :) we want to use Consumption Plan because Premium is so expensive but it does not have VNET integration as you said, is there any other way to connect a Consumption Plan to a private VNET?

    • @srigunnala
      @srigunnala  4 місяці тому

      Unfortunately, not as of now. Since consumption plan runs in multitenant azure environment, it doesn't support any VNET Integration.
      Thanks,
      Sri!

    • @ggs6475
      @ggs6475 4 місяці тому

      no problem, as i thought, thnx, is there any hacky way around this like wrap serevrless functions into some other resource or are we basically stuck with the higher cost? thnx again@@srigunnala