Toegangs beperkingen voor Azure App Service instellenSet up Azure App Service access restrictions

Door toegangs beperkingen in te stellen, kunt u een lijst met voor rang gegeven toestaan/weigeren definiëren die de netwerk toegang tot uw app beheert.By setting up access restrictions, you can define a priority-ordered allow/deny list that controls network access to your app. De lijst kan IP-adressen of Azure Virtual Network subnetten bevatten.The list can include IP addresses or Azure Virtual Network subnets. Als er sprake is van een of meer vermeldingen, bestaat er al een impliciete weigering aan het einde van de lijst.When there are one or more entries, an implicit deny all exists at the end of the list.

De functie voor toegangs beperking werkt met alle door Azure App Service gehoste workloads.The access restriction capability works with all Azure App Service-hosted workloads. De werk belastingen kunnen Web apps, API apps, Linux-apps, Linux-container-apps en-functies bevatten.The workloads can include web apps, API apps, Linux apps, Linux container apps, and Functions.

Wanneer er een aanvraag wordt ingediend bij uw app, wordt het van-adres geëvalueerd op basis van de regels in de lijst met toegangs restricties.When a request is made to your app, the FROM address is evaluated against the rules in your access restriction list. Als het van-adres zich in een subnet bevindt dat is geconfigureerd met Service-eind punten naar micro soft. Web, wordt het bron-subnet vergeleken met de regels voor het virtuele netwerk in de lijst met toegangs restricties.If the FROM address is in a subnet that's configured with service endpoints to Microsoft.Web, the source subnet is compared against the virtual network rules in your access restriction list. Als het adres niet is toegestaan op basis van de regels in de lijst, reageert de service met een HTTP 403- status code.If the address isn't allowed access based on the rules in the list, the service replies with an HTTP 403 status code.

De functie voor toegangs beperking wordt geïmplementeerd in de front-end rollen van App Service, die een upstream zijn van de werk nemers waar de code wordt uitgevoerd.The access restriction capability is implemented in the App Service front-end roles, which are upstream of the worker hosts where your code runs. Toegangs beperkingen zijn daarom effectief op het netwerk toegangscontrole lijsten (Acl's).Therefore, access restrictions are effectively network access-control lists (ACLs).

De mogelijkheid om de toegang tot uw web-app vanuit een virtueel Azure-netwerk te beperken, is ingeschakeld door service-eind punten.The ability to restrict access to your web app from an Azure virtual network is enabled by service endpoints. Met Service-eind punten kunt u de toegang beperken tot een multi tenant-service van geselecteerde subnetten.With service endpoints, you can restrict access to a multi-tenant service from selected subnets. Het is niet mogelijk om het verkeer te beperken tot apps die worden gehost in een App Service Environment.It doesn't work to restrict traffic to apps that are hosted in an App Service Environment. Als u een App Service Environment hebt, kunt u de toegang tot uw app beheren door IP-adres regels toe te passen.If you're in an App Service Environment, you can control access to your app by applying IP address rules.

Notitie

De service-eind punten moeten beide zijn ingeschakeld op de netwerk zijde en voor de Azure-service waarmee ze worden ingeschakeld.The service endpoints must be enabled both on the networking side and for the Azure service that they're being enabled with. Zie Virtual Network Service-eind puntenvoor een lijst met Azure-Services die service-eind punten ondersteunen.For a list of Azure services that support service endpoints, see Virtual Network service endpoints.

Diagram van de stroom van toegangs beperkingen.

Toegangs beperkings regels beheren in de portalManage access restriction rules in the portal

Ga als volgt te werk om een toegangs beperkings regel toe te voegen aan uw app:To add an access restriction rule to your app, do the following:

  1. Meld u aan bij Azure Portal.Sign in to the Azure portal.

  2. Selecteer netwerken in het linkerdeel venster.On the left pane, select Networking.

  3. Selecteer in het deel venster netwerken onder toegangs beperkingen de optie toegangs beperkingen configureren.On the Networking pane, under Access Restrictions, select Configure Access Restrictions.

    Scherm opname van het deel venster met netwerk opties App Service in de Azure Portal.

  4. Bekijk op de pagina toegangs beperkingen de lijst met toegangs beperkings regels die voor uw app zijn gedefinieerd.On the Access Restrictions page, review the list of access restriction rules that are defined for your app.

    Scherm afbeelding van de pagina toegangs beperkingen in de Azure Portal, waarin de lijst met toegangs beperkings regels wordt weer gegeven die zijn gedefinieerd voor de geselecteerde app.

    In de lijst worden alle huidige beperkingen weer gegeven die worden toegepast op de app.The list displays all the current restrictions that are applied to the app. Als u een beperking voor het virtuele netwerk hebt voor uw app, wordt in de tabel aangegeven of de service-eind punten zijn ingeschakeld voor micro soft. Web.If you have a virtual network restriction on your app, the table shows whether the service endpoints are enabled for Microsoft.Web. Als er geen beperkingen zijn gedefinieerd voor uw app, is de app vanaf elke locatie toegankelijk.If no restrictions are defined on your app, the app is accessible from anywhere.

Een toegangs beperkings regel toevoegenAdd an access restriction rule

Als u een toegangs beperkings regel wilt toevoegen aan uw app, selecteert u regel toevoegen in het deel venster toegangs beperkingen .To add an access restriction rule to your app, on the Access Restrictions pane, select Add rule. Nadat u een regel hebt toegevoegd, wordt deze onmiddellijk van kracht.After you add a rule, it becomes effective immediately.

Regels worden in volg orde van prioriteit afgedwongen, te beginnen met het laagste getal in de kolom prioriteit .Rules are enforced in priority order, starting from the lowest number in the Priority column. Een impliciete weigering is van kracht nadat u zelfs één regel hebt toegevoegd.An implicit deny all is in effect after you add even a single rule.

Ga als volgt te werk in het deel venster toegangs beperking toevoegen wanneer u een regel maakt:On the Add Access Restriction pane, when you create a rule, do the following:

  1. Selecteer onder actie de optie toestaan of weigeren.Under Action, select either Allow or Deny.

    Scherm opname van het deel venster ' toegangs beperking toevoegen '.

  2. Voer eventueel een naam en beschrijving van de regel in.Optionally, enter a name and description of the rule.

  3. Voer in het vak prioriteit een prioriteits waarde in.In the Priority box, enter a priority value.

  4. Selecteer in de vervolg keuzelijst type het type regel.In the Type drop-down list, select the type of rule.

De verschillende typen regels worden beschreven in de volgende secties.The different types of rules are described in the following sections.

Notitie

  • Er geldt een limiet van 512 toegangs beperkings regels.There is a limit of 512 access restriction rules. Als u meer dan 512 toegangs beperkings regels nodig hebt, raden we u aan om een zelfstandig beveiligings product te installeren, zoals Azure front deur, Azure-app gateway of een alternatieve WAF.If you require more than 512 access restriction rules, we suggest that you consider installing a standalone security product, such as Azure Front Door, Azure App Gateway, or an alternative WAF.

Een op IP-adres gebaseerde regel instellenSet an IP address-based rule

Volg de procedure zoals beschreven in de vorige sectie, maar met de volgende toevoeging:Follow the procedure as outlined in the preceding section, but with the following addition:

  • Selecteer voor stap 4 in de vervolg keuzelijst type de optie IPv4 of IPv6.For step 4, in the Type drop-down list, select IPv4 or IPv6.

Geef het IP-adres blok op in de CIDR-notatie (classable Inter-Domain Routing) voor zowel IPv4-als IPv6-adressen.Specify the IP Address Block in Classless Inter-Domain Routing (CIDR) notation for both the IPv4 and IPv6 addresses. Als u een adres wilt opgeven, kunt u iets zoals 1.2.3.4/32 gebruiken, waarbij de eerste vier octetten uw IP-adres vertegenwoordigen en /32 het masker is.To specify an address, you can use something like 1.2.3.4/32, where the first four octets represent your IP address and /32 is the mask. De IPv4 CIDR-notatie voor alle adressen is 0.0.0.0/0.The IPv4 CIDR notation for all addresses is 0.0.0.0/0. Zie klasseloze Inter-Domain route ringvoor meer informatie over CIDR-notatie.To learn more about CIDR notation, see Classless Inter-Domain Routing.

Een regel op basis van een service-eind punt instellenSet a service endpoint-based rule

  • Selecteer voor stap 4 in de vervolg keuzelijst type de optie Virtual Network.For step 4, in the Type drop-down list, select Virtual Network.

    Scherm afbeelding van het deel venster beperking toevoegen met het Virtual Network type geselecteerd.

Geef de vervolg keuzelijst abonnement, Virtual Network en subnet op die overeenkomen met wat u de toegang wilt beperken.Specify the Subscription, Virtual Network, and Subnet drop-down lists, matching what you want to restrict access to.

Door service-eind punten te gebruiken, kunt u de toegang beperken tot geselecteerde subnetten van het virtuele netwerk van Azure.By using service endpoints, you can restrict access to selected Azure virtual network subnets. Als service-eind punten niet al zijn ingeschakeld met micro soft. web voor het geselecteerde subnet, worden ze automatisch ingeschakeld, tenzij u het selectie vakje ontbrekende micro soft. webservice-eind punten negeren inschakelt.If service endpoints aren't already enabled with Microsoft.Web for the subnet that you selected, they'll be automatically enabled unless you select the Ignore missing Microsoft.Web service endpoints check box. Het scenario waarin u mogelijk service-eind punten in de app wilt inschakelen, maar niet het subnet is afhankelijk van het feit of u gemachtigd bent om deze in te scha kelen op het subnet.The scenario where you might want to enable service endpoints on the app but not the subnet depends mainly on whether you have the permissions to enable them on the subnet.

Als iemand anders de service-eind punten in het subnet moet inschakelen, schakelt u het selectie vakje ontbrekende micro soft. web service-eind punten negeren in.If you need someone else to enable service endpoints on the subnet, select the Ignore missing Microsoft.Web service endpoints check box. Uw app wordt geconfigureerd voor service-eind punten in de verwachting dat ze later in het subnet worden ingeschakeld.Your app will be configured for service endpoints in anticipation of having them enabled later on the subnet.

U kunt Service-eind punten niet gebruiken om de toegang te beperken tot apps die worden uitgevoerd in een App Service Environment.You can't use service endpoints to restrict access to apps that run in an App Service Environment. Als uw app zich in een App Service Environment bevindt, kunt u de toegang hiertoe beheren door IP-toegangs regels toe te passen.When your app is in an App Service Environment, you can control access to it by applying IP access rules.

Met Service-eind punten kunt u uw app configureren met toepassings gateways of andere Web Application Firewall (WAF)-apparaten.With service endpoints, you can configure your app with application gateways or other web application firewall (WAF) devices. U kunt ook toepassingen met meerdere lagen configureren met beveiligde back-ends.You can also configure multi-tier applications with secure back ends. Zie netwerk functies en app service en Application Gateway integratie met Service-eind puntenvoor meer informatie.For more information, see Networking features and App Service and Application Gateway integration with service endpoints.

Notitie

  • Service-eind punten worden momenteel niet ondersteund voor web-apps die gebruikmaken van IP-Secure Sockets Layer (VIP) voor virtueel IP-verkeer.Service endpoints aren't currently supported for web apps that use IP Secure Sockets Layer (SSL) virtual IP (VIP).

Een op code gebaseerde regel voor een service instellen (preview-versie)Set a service tag-based rule (preview)

  • Voor stap 4 selecteert u in de vervolg keuzelijst type de optie service label (voor beeld).For step 4, in the Type drop-down list, select Service Tag (preview).

    Scherm afbeelding van het deel venster beperking toevoegen met het servicetag type geselecteerd.

Elke servicetag vertegenwoordigt een lijst met IP-adresbereiken van Azure-Services.Each service tag represents a list of IP ranges from Azure services. Een lijst met deze services en koppelingen naar de specifieke bereiken vindt u in de documentatie voor de service label.A list of these services and links to the specific ranges can be found in the service tag documentation.

De volgende lijst met Service tags wordt ondersteund in de toegangs beperkings regels tijdens de preview-fase:The following list of service tags is supported in access restriction rules during the preview phase:

  • ActionGroupActionGroup
  • AzureCloudAzureCloud
  • AzureCognitiveSearchAzureCognitiveSearch
  • AzureConnectorsAzureConnectors
  • AzureEventGridAzureEventGrid
  • AzureFrontDoor. back-endAzureFrontDoor.Backend
  • AzureMachineLearningAzureMachineLearning
  • AzureSignalRAzureSignalR
  • AzureTrafficManagerAzureTrafficManager
  • LogicAppsLogicApps
  • ServiceFabricServiceFabric

Een regel bewerkenEdit a rule

  1. Als u wilt beginnen met het bewerken van een bestaande beperkings regel voor toegang, selecteert u op de pagina toegangs beperkingen de regel die u wilt bewerken.To begin editing an existing access restriction rule, on the Access Restrictions page, select the rule you want to edit.

  2. Breng in het deel venster toegangs beperking bewerken de gewenste wijzigingen aan en selecteer regel bijwerken.On the Edit Access Restriction pane, make your changes, and then select Update rule. Bewerkingen zijn direct van kracht, met inbegrip van wijzigingen in de volg orde van prioriteit.Edits are effective immediately, including changes in priority ordering.

    Scherm afbeelding van het deel venster ' toegangs beperking bewerken ' in de Azure Portal, waarin de velden voor een bestaande toegangs beperkings regel worden weer gegeven.

    Notitie

    Wanneer u een regel bewerkt, kunt u niet scha kelen tussen regel typen.When you edit a rule, you can't switch between rule types.

Een regel verwijderenDelete a rule

Als u een regel wilt verwijderen, selecteert u op de pagina toegangs beperkingen het beletsel teken (...) naast de regel die u wilt verwijderen en selecteert u vervolgens verwijderen.To delete a rule, on the Access Restrictions page, select the ellipsis (...) next to the rule you want to delete, and then select Remove.

Scherm afbeelding van de pagina toegangs beperkingen, met het weglatings teken naast de regel voor toegangs beperking die moet worden verwijderd.

Geavanceerde scenario's voor toegangs beperkingAccess restriction advanced scenarios

In de volgende secties worden een aantal geavanceerde scenario's beschreven die gebruikmaken van toegangs beperkingen.The following sections describe some advanced scenarios using access restrictions.

Eén IP-adres blok kerenBlock a single IP address

Wanneer u uw eerste toegangs beperkings regel toevoegt, voegt de service een expliciete regel voor het weigeren van alle regels toe met de prioriteit 2147483647.When you add your first access restriction rule, the service adds an explicit Deny all rule with a priority of 2147483647. In de praktijk is de regel expliciet Alles weigeren de laatste regel die moet worden uitgevoerd en blokkeert deze de toegang tot een IP-adres dat niet expliciet is toegestaan door een regel voor toestaan .In practice, the explicit Deny all rule is the final rule to be executed, and it blocks access to any IP address that's not explicitly allowed by an Allow rule.

Voor een scenario waarbij u een enkel IP-adres of een blok met IP-adressen expliciet wilt blok keren, maar toegang tot alle andere wilt toestaan, voegt u een expliciete regel voor toestaan toe.For a scenario where you want to explicitly block a single IP address or a block of IP addresses, but allow access to everything else, add an explicit Allow All rule.

Scherm afbeelding van de pagina toegangs beperkingen in de Azure Portal, waarbij één geblokkeerd IP-adres wordt weer gegeven.

Toegang tot een SCM-site beperkenRestrict access to an SCM site

Naast het beheren van de toegang tot uw app, kunt u de toegang beperken tot de SCM-site die wordt gebruikt door uw app.In addition to being able to control access to your app, you can restrict access to the SCM site that's used by your app. De SCM-site is zowel het Web Deploy-eind punt als de kudu-console.The SCM site is both the web deploy endpoint and the Kudu console. U kunt toegangs beperkingen voor de SCM-site afzonderlijk toewijzen vanuit de app of dezelfde set beperkingen voor zowel de app als de SCM-site gebruiken.You can assign access restrictions to the SCM site from the app separately or use the same set of restrictions for both the app and the SCM site. Wanneer u dezelfde beperkingen als <app name> selectie vakje inschakelt, wordt alles leeg gelaten. Als u het selectie vakje uitschakelt, worden de instellingen van uw SCM-site opnieuw toegepast.When you select the Same restrictions as <app name> check box, everything is blanked out. If you clear the check box, your SCM site settings are reapplied.

Scherm afbeelding van de pagina toegangs beperkingen in de Azure Portal, waarin wordt weer gegeven dat er geen toegangs beperkingen zijn ingesteld voor de SCM-site of de app.

Toegang tot een specifiek exemplaar van de Azure-front-deur beperken (preview-versie)Restrict access to a specific Azure Front Door instance (preview)

Verkeer van de voor deur van Azure naar uw toepassing is afkomstig uit een bekende set IP-bereiken die zijn gedefinieerd in het label AzureFrontDoor. back-service.Traffic from Azure Front Door to your application originates from a well known set of IP ranges defined in the AzureFrontDoor.Backend service tag. Met een beperkings regel voor service tags kunt u het verkeer beperken tot alleen de herkomst van de voor deur van Azure.Using a service tag restriction rule, you can restrict traffic to only originate from Azure Front Door. Om ervoor te zorgen dat verkeer alleen afkomstig is uit uw specifieke exemplaar, moet u de binnenkomende aanvragen verder filteren op basis van de unieke http-header die door Azure front-deur wordt verzonden.To ensure traffic only originates from your specific instance, you will need to further filter the incoming requests based on the unique http header that Azure Front Door sends. Tijdens de preview kunt u dit doen met Power shell of REST/ARM.During preview you can achieve this with PowerShell or REST/ARM.

  • Power shell-voor beeld (de voor deur-ID vindt u in de Azure Portal):PowerShell example (Front Door ID can be found in the Azure portal):

      $frontdoorId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      Add-AzWebAppAccessRestrictionRule -ResourceGroupName "ResourceGroup" -WebAppName "AppName" `
        -Name "Front Door example rule" -Priority 100 -Action Allow -ServiceTag AzureFrontDoor.Backend `
        -HttpHeader @{'x-azure-fdid' = $frontdoorId}
    

Toegangs beperkings regels programmatisch beherenManage access restriction rules programmatically

U kunt toegangs beperkingen programmatisch toevoegen door een van de volgende handelingen uit te voeren:You can add access restrictions programmatically by doing either of the following:

  • Gebruik de Azure cli.Use the Azure CLI. Bijvoorbeeld:For example:

    az webapp config access-restriction add --resource-group ResourceGroup --name AppName \
      --rule-name 'IP example rule' --action Allow --ip-address 122.133.144.0/24 --priority 100
    
  • Gebruik Azure PowerShell.Use Azure PowerShell. Bijvoorbeeld:For example:

    Add-AzWebAppAccessRestrictionRule -ResourceGroupName "ResourceGroup" -WebAppName "AppName"
        -Name "Ip example rule" -Priority 100 -Action Allow -IpAddress 122.133.144.0/24
    

    Notitie

    Voor het werken met Service Tags, HTTP-headers of regels met meerdere bronnen is ten minste versie 5.1.0 vereist.Working with service tags, http headers or multi-source rules requires at least version 5.1.0. U kunt de versie van de geïnstalleerde module controleren met: Get-InstalledModule-name AZYou can verify the version of the installed module with: Get-InstalledModule -Name Az

U kunt waarden ook hand matig instellen door een van de volgende handelingen uit te voeren:You can also set values manually by doing either of the following:

  • Gebruik een Azure rest API put-bewerking in de app-configuratie in azure Resource Manager.Use an Azure REST API PUT operation on the app configuration in Azure Resource Manager. De locatie voor deze informatie in Azure Resource Manager is:The location for this information in Azure Resource Manager is:

    management.azure.com/subscriptions/-abonnements-id/resourceGroups/resource groepen/providers/Microsoft.web/sites/Web-app-naam/config/Web? API-Version = 2020-06-01management.azure.com/subscriptions/subscription ID/resourceGroups/resource groups/providers/Microsoft.Web/sites/web app name/config/web?api-version=2020-06-01

  • Gebruik een resource manager-sjabloon.Use a Resource Manager template. U kunt bijvoorbeeld resources.azure.com gebruiken en het ipSecurityRestrictions-blok bewerken om de vereiste JSON toe te voegen.As an example, you can use resources.azure.com and edit the ipSecurityRestrictions block to add the required JSON.

    De JSON-syntaxis voor het vorige voor beeld is:The JSON syntax for the earlier example is:

    {
      "properties": {
        "ipSecurityRestrictions": [
          {
            "ipAddress": "122.133.144.0/24",
            "action": "Allow",
            "priority": 100,
            "name": "IP example rule"
          }
        ]
      }
    }
    

    De JSON-syntaxis voor een geavanceerd voor beeld met de beperking service label en http-header is:The JSON syntax for an advanced example using service tag and http header restriction is:

    {
      "properties": {
        "ipSecurityRestrictions": [
          {
            "ipAddress": "AzureFrontDoor.Backend",
            "tag": "ServiceTag",
            "action": "Allow",
            "priority": 100,
            "name": "Azure Front Door example",
            "headers": {
              "x-azure-fdid": [
                "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
              ]
            }
          }
        ]
      }
    }
    

Toegangs beperkingen voor Azure Functions instellenSet up Azure Functions access restrictions

Er zijn ook toegangs beperkingen beschikbaar voor functie-apps met dezelfde functionaliteit als App Service-abonnementen.Access restrictions are also available for function apps with the same functionality as App Service plans. Wanneer u toegangs beperkingen inschakelt, schakelt u ook de Azure Portal code-editor uit voor niet-toegestane IP-adressen.When you enable access restrictions, you also disable the Azure portal code editor for any disallowed IPs.

Volgende stappenNext steps

Toegangs beperkingen voor Azure FunctionsAccess restrictions for Azure Functions
Integratie met Service-eind punten Application GatewayApplication Gateway integration with service endpoints