Restrições de acesso de serviço de aplicações do AzureAzure App Service Access Restrictions

Restrições de acesso permitem-lhe definir uma lista ordenada permitir/recusar de prioridade que controla o acesso de rede para a sua aplicação.Access Restrictions enable you to define a priority ordered allow/deny list that controls network access to your app. A lista pode incluir endereços IP ou sub-redes de rede Virtual do Azure.The list can include IP addresses or Azure Virtual Network subnets. Quando há uma ou mais entradas, não existe, em seguida, um implícita "Negar tudo" que existe no final da lista.When there are one or more entries, there is then an implicit "deny all" that exists at the end of the list.

A capacidade de restrições de acesso funciona com todos os serviço de aplicações, cargas de trabalho alojado incluindo; aplicações Web, aplicações API, as aplicações do Linux, aplicações de contentor do Linux e as funções.The Access Restrictions capability works with all App Service hosted work loads including; web apps, API apps, Linux apps, Linux container apps, and Functions.

Quando é efetuado um pedido à sua aplicação, o endereço é comparado com as regras de endereços IP na sua lista de restrições de acesso.When a request is made to your app, the FROM address is evaluated against the IP address rules in your access restrictions list. Se o endereço numa sub-rede que está configurada com pontos finais de serviço à Microsoft. Web, em seguida, a sub-rede de origem é comparada com as regras de rede virtual na sua lista de restrições de acesso.If the FROM address is in a subnet that is configured with service endpoints to Microsoft.Web, then the source subnet is compared against the virtual network rules in your access restrictions list. Se o endereço não é permitido o acesso com base nas regras na lista, o serviço responde com uma HTTP 403 código de estado.If the address is not allowed access based on the rules in the list, the service replies with an HTTP 403 status code.

A capacidade de restrições de acesso é implementada nas funções de front-end de serviço de aplicações, que são a montante, os anfitriões de trabalho em que o seu código é executado.The access restrictions capability is implemented in the App Service front-end roles, which are upstream of the worker hosts where your code runs. Por conseguinte, restrições de acesso são, efetivamente, ACLs de rede.Therefore, access restrictions are effectively network ACLs.

A capacidade para restringir o acesso à sua aplicação web a partir de uma rede Virtual do Azure (VNet) é chamada pontos finais de serviço.The ability to restrict access to your web app from an Azure Virtual Network (VNet) is called service endpoints. Pontos finais de serviço permitem-lhe restringir o acesso a um serviço de multi-inquilino de sub-redes selecionadas.Service endpoints enable you to restrict access to a multi-tenant service from selected subnets. Tem de estar ativada no tanto do lado do funcionamento em rede, bem como o serviço que está a ser ativada com.It must be enabled on both the networking side as well as the service that it is being enabled with. Ele não funciona para restringir o tráfego para aplicações alojadas num ambiente de serviço de aplicações.It does not work to restrict traffic to apps that are hosted in an App Service Environment. Se estiver num ambiente de serviço de aplicações, pode controlar o acesso à sua aplicação com regras de endereços IP.If you are in an App Service Environment, you can control access to your app with IP address rules.

fluxo de restrições de acesso

Adicionar e editar regras de restrição de acesso no portalAdding and editing Access Restriction rules in the portal

Para adicionar uma regra de restrição de acesso à sua aplicação, utilize o menu para abrir rede>restrições de acesso e clique em configurar restrições de acessoTo add an access restriction rule to your app, use the menu to open Network>Access Restrictions and click on Configure Access Restrictions

Opções de rede do serviço de aplicações

Desde a interface do Usuário de restrições de acesso, pode rever a lista de regras de restrição de acesso definidas para a sua aplicação.From the Access Restrictions UI, you can review the list of access restriction rules defined for your app.

restrições de acesso de lista

A lista mostrará todas as restrições atuais que estão na sua aplicação.The list will show all of the current restrictions that are on your app. Se tiver uma restrição de VNet na sua aplicação, a tabela mostra se os pontos finais de serviço estão ativados para Microsoft. Web.If you have a VNet restriction on your app, the table will show if service endpoints are enabled for Microsoft.Web. Quando não existem sem restrições definidas na sua aplicação, a aplicação estará acessível de qualquer lugar.When there are no defined restrictions on your app, your app will be accessible from anywhere.

Adicionar regras de endereços IPAdding IP address rules

Pode clicar em [+] adicionar para adicionar uma nova regra de restrição de acesso.You can click on [+] Add to add a new access restriction rule. Depois de adicionar uma regra, ele entrarão em vigor imediatamente.Once you add a rule, it will become effective immediately. As regras são impostas por ordem de prioridade a partir do número mais baixo e a aumentar.Rules are enforced in priority order starting from the lowest number and going up. Há uma implícita Negar tudo o que está em vigor depois de adicionar até mesmo uma única regra.There is an implicit deny all that is in effect once you add even a single rule.

Ao criar uma regra, tem de selecionar permitir/recusar e também o tipo de regra.When creating a rule, you must select allow/deny and also the type of rule. Também tem de fornecer o valor de prioridade e o que está a restringir o acesso a.You are also required to provide the priority value and what you are restricting access to. Opcionalmente, pode adicionar um nome e uma descrição para a regra.You can optionally add a name, and description to the rule.

Adicionar uma regra de restrição de acesso de IP

Para definir um endereço IP com base em regra, selecione um tipo de IPv4 ou IPv6.To set an IP address based rule, select a type of IPv4 or IPv6. A notação de endereço IP tem de ser especificada na notação CIDR para endereços IPv4 e IPv6.IP Address notation must be specified in CIDR notation for both IPv4 and IPv6 addresses. Para especificar um endereço exato, pode usar algo como 1.2.3.4/32 onde os quatro primeiros octetos representam o seu endereço IP e /32 é a máscara.To specify an exact 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. A notação de CIDR de IPv4 para todos os endereços é 0.0.0.0/0.The IPv4 CIDR notation for all addresses is 0.0.0.0/0. Para saber mais sobre a notação CIDR, leia Classless Inter-Domain Routing.To learn more about CIDR notation, you can read Classless Inter-Domain Routing.

Pontos finais de serviçoService endpoints

Pontos finais de serviço permite-lhe restringir o acesso a sub-redes de rede virtual do Azure selecionada.Service endpoints enables you to restrict access to selected Azure virtual network subnets. Para restringir o acesso a uma sub-rede específica, crie uma regra de restrição com um tipo de rede Virtual.To restrict access to a specific subnet, create a restriction rule with a type of Virtual Network. Pode selecionar a subscrição, a VNet e a sub-rede que pretende permitir ou negar o acesso com.You can pick the subscription, VNet, and subnet you wish to allow or deny access with. Se a pontos finais de serviço não já foram ativados com o Microsoft. Web para a sub-rede que selecionou, ele será ativado automaticamente para, a menos que marque a caixa pedindo para não fazê-lo.If service endpoints are not already enabled with Microsoft.Web for the subnet that you selected, it will automatically be enabled for you unless you check the box asking not to do that. A situação em que iria querer ativá-lo a aplicação, mas não a sub-rede está amplamente relacionada à se tiver as permissões para ativar os pontos finais de serviço na sub-rede ou não.The situation where you would want to enable it on the app but not the subnet is largely related to if you have the permissions to enable service endpoints on the subnet or not. Se precisar de obter alguém para ativar pontos finais de serviço na sub-rede, pode selecionar a caixa e ter a aplicação configurada para pontos finais de serviço em antecipação a ele que está a ser ativado mais tarde na sub-rede.If you need to get somebody else to enable service endpoints on the subnet, you can check the box and have your app configured for service endpoints in anticipation of it being enabled later on the subnet.

Adicionar uma regra de restrição de acesso de VNet

Pontos finais de serviço não podem ser utilizados para restringir o acesso às aplicações que são executados num ambiente de serviço de aplicações.Service endpoints cannot be used to restrict access to apps that run in an App Service Environment. Quando a sua aplicação está num ambiente de serviço de aplicações, pode controlar o acesso à sua aplicação com regras de acesso IP.When your app is in an App Service Environment, you can control access to your app with IP access rules.

Com pontos finais de serviço, pode configurar a sua aplicação com Gateways de aplicação ou outros dispositivos de WAF.With service endpoints, you can configure your app with Application Gateways or other WAF devices. Também pode configurar aplicações de várias camadas com o back-ends seguro.You can also configure multi-tier applications with secure backends. Para obter mais detalhes sobre algumas das possibilidades, leia recursos de rede e o serviço de aplicações.For more details on some of the possibilities, read Networking features and App Service.

Gerir regras de restrição de acessoManaging access restriction rules

Pode clicar em qualquer linha para editar uma regra de restrição de acesso existente.You can click on any row to edit an existing access restriction rule. As edições entram em vigor de imediato, incluindo alterações na ordem de prioridade.Edits are effective immediately including changes in priority ordering.

Editar uma regra de restrição de acesso

Ao editar uma regra, não é possível alterar o tipo de entre uma regra de endereço IP e uma regra de rede Virtual.When you edit a rule, you cannot change the type between an IP address rule and a Virtual Network rule.

Editar uma regra de restrição de acesso

Para eliminar uma regra, clique no ... na sua regra e clique em remover.To delete a rule, click the ... on your rule and then click remove.

Eliminar regra de restrição de acesso

Bloqueio de um único endereço IPBlocking a single IP Address

Ao adicionar a sua primeira regra de restrição de IP, o serviço irá adicionar explícita recusar tudo regra com prioridade 2147483647.When adding your first IP Restriction rule, the service will add an explicit deny all rule with a priority of 2147483647. Na prática, o explícita recusar tudo regra será a última regra executada e irá bloquear o acesso para qualquer endereço IP que não é explicitamente permitido utilizando um permitir regra.In practice, the explicit deny all rule will be last rule executed and will block access to any IP address that is not explicitly allowed using an Allow rule.

Para o cenário em que os usuários querem bloquear explicitamente um único endereço IP ou o bloco de endereços IP, mas permitir tudo o que mais acesso, é necessário adicionar explícita permitir todas as regra.For the scenario where users want to explicitly block a single IP address or IP address block, but allow everything else access, it is necessary to add an explicit Allow All rule.

endereço de ip único bloco

Site do SCMSCM site

Além de ser capaz de controlar o acesso à sua aplicação, também pode restringir o acesso ao site scm utilizado pela sua aplicação.In addition to being able to control access to your app, you can also restrict access to the scm site used by your app. O site do scm é web implementar ponto final e também a consola Kudu.The scm site is the web deploy endpoint and also the Kudu console. Em separado pode atribuir as restrições de acesso ao scm site da aplicação ou utilizar o mesmo definido para a aplicação e o site do scm.You can separately assign access restrictions to the scm site from the app or use the same set for both the app and the scm site. Quando seleciona a caixa para têm as mesmas restrições que a sua aplicação, tudo o que é blanked horizontalmente. Se desmarcar a caixa, são aplicadas a quaisquer definições que tinha anteriormente no site do scm.When you check the box to have the same restrictions as your app, everything is blanked out. If you uncheck the box, whatever settings you had earlier on the scm site are applied.

restrições de acesso de lista

Manipulação programática de regras de restrição de acessoProgrammatic manipulation of access restriction rules

Atualmente não há CLI ou PowerShell para a nova capacidade de restrições de acesso, mas os valores podem ser definidos manualmente, com uma API REST do Azure operação PUT na configuração da aplicação no Gestor de recursos.There currently is no CLI or PowerShell for the new Access Restrictions capability but the values can be set manually with an Azure REST API PUT operation on the app configuration in Resource Manager. Por exemplo, pode utilizar resources.azure.com e edite o bloco de ipSecurityRestrictions para adicionar o JSON necessário.As an example, you can use resources.azure.com and edit the ipSecurityRestrictions block to add the required JSON.

A localização para estas informações no Gestor de recursos é:The location for this information in Resource Manager is:

Management.Azure.com/subscriptions/ID de subscrição/resourceGroups/grupos de recursos/providers/Microsoft.Web/sites/nome da aplicação web /config/web? a API-version = 2018-02-01management.azure.com/subscriptions/subscription ID/resourceGroups/resource groups/providers/Microsoft.Web/sites/web app name/config/web?api-version=2018-02-01

A sintaxe JSON de exemplo anterior é:The JSON syntax for the earlier example is:

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

Restrições de IP da aplicação de funçãoFunction App IP Restrictions

Restrições de IP estão disponíveis para ambas as aplicações de função com a mesma funcionalidade que planos do serviço de aplicações.IP restrictions are available for both Function Apps with the same functionality as App Service plans. Ativar restrições de IP desabilitará o editor de código de portal para qualquer IPs não permitidos.Enabling IP restrictions will disable the portal code editor for any disallowed IPs.

Saiba mais aquiLearn more here