Použití koncových bodů a pravidel služby Virtual Network pro Azure Database for PostgreSQL-Single serverUse Virtual Network service endpoints and rules for Azure Database for PostgreSQL - Single Server

Pravidla virtuální sítě jsou jednou funkcí zabezpečení brány firewall, která určuje, jestli váš server Azure Database for PostgreSQL přijímá komunikaci, která se odesílají z konkrétních podsítí ve virtuálních sítích.Virtual network rules are one firewall security feature that controls whether your Azure Database for PostgreSQL server accepts communications that are sent from particular subnets in virtual networks. Tento článek vysvětluje, proč je funkce pravidla virtuální sítě někdy nejlepší volbou pro bezpečné povolení komunikace s Azure Database for PostgreSQL serverem.This article explains why the virtual network rule feature is sometimes your best option for securely allowing communication to your Azure Database for PostgreSQL server.

Aby bylo možné vytvořit pravidlo virtuální sítě, musí nejprve existovat virtuální síť (VNET) a koncový bod služby virtuální sítě pro pravidlo, které se má odkazovat.To create a virtual network rule, there must first be a virtual network (VNet) and a virtual network service endpoint for the rule to reference. Následující obrázek ukazuje, jak koncový bod služby Virtual Network funguje s Azure Database for PostgreSQL:The following picture illustrates how a Virtual Network service endpoint works with Azure Database for PostgreSQL:

Příklad fungování koncového bodu služby virtuální sítě

Poznámka

Tato funkce je dostupná ve všech oblastech veřejného cloudu Azure, kde Azure Database for PostgreSQL nasazené pro Pro obecné účely a paměťově optimalizované servery.This feature is available in all regions of Azure public cloud where Azure Database for PostgreSQL is deployed for General Purpose and Memory Optimized servers. V případě partnerského vztahu virtuálních sítí platí, že pokud přenos prochází přes společnou bránu virtuální sítě s koncovými body služby a měl by se přesměrovat na partnera, vytvořte prosím pravidlo seznamu ACL/virtuální sítě, které povolí službě Azure Virtual Machines ve virtuální síti brány pro přístup k serveru Azure Database for PostgreSQL.In case of VNet peering, if traffic is flowing through a common VNet Gateway with service endpoints and is supposed to flow to the peer, please create an ACL/VNet rule to allow Azure Virtual Machines in the Gateway VNet to access the Azure Database for PostgreSQL server.

Terminologie a popisTerminology and description

Virtuální síť: Můžete mít virtuální sítě přidružené k vašemu předplatnému Azure.Virtual network: You can have virtual networks associated with your Azure subscription.

Podsíť: Virtuální síť obsahuje podsítě.Subnet: A virtual network contains subnets. Všechny virtuální počítače Azure, které jste přiřadili k podsítím.Any Azure virtual machines (VMs) that you have are assigned to subnets. Jedna podsíť může obsahovat několik virtuálních počítačů nebo jiných výpočetních uzlů.One subnet can contain multiple VMs or other compute nodes. Výpočetní uzly, které jsou mimo vaši virtuální síť, nemají přístup k virtuální síti, pokud nenastavíte zabezpečení tak, aby umožňovalo přístup.Compute nodes that are outside of your virtual network cannot access your virtual network unless you configure your security to allow access.

Koncový bod služby Virtual Network: Koncový bod služby Virtual Network je podsíť, jejíž hodnoty vlastností zahrnují jeden nebo více formálních názvů typů služeb Azure.Virtual Network service endpoint: A Virtual Network service endpoint is a subnet whose property values include one or more formal Azure service type names. V tomto článku se zajímá název typu Microsoft. SQL, který odkazuje na službu Azure s názvem SQL Database.In this article we are interested in the type name of Microsoft.Sql, which refers to the Azure service named SQL Database. Tato značka služby se vztahuje také na služby Azure Database for PostgreSQL a MySQL.This service tag also applies to the Azure Database for PostgreSQL and MySQL services. Je důležité si uvědomit, že pokud použijete značku služby Microsoft. SQL na koncový bod služby virtuální sítě, nakonfiguruje se provoz koncového bodu služby pro všechny Azure SQL Database, Azure Database for PostgreSQL a Azure Database for MySQL servery v podsíti.It is important to note when applying the Microsoft.Sql service tag to a VNet service endpoint it will configure service endpoint traffic for all Azure SQL Database, Azure Database for PostgreSQL and Azure Database for MySQL servers on the subnet.

Pravidlo virtuální sítě: Pravidlo virtuální sítě pro server Azure Database for PostgreSQL je podsíť, která je uvedená v seznamu řízení přístupu (ACL) vašeho serveru Azure Database for PostgreSQL.Virtual network rule: A virtual network rule for your Azure Database for PostgreSQL server is a subnet that is listed in the access control list (ACL) of your Azure Database for PostgreSQL server. Aby byl v seznamu ACL pro váš Azure Database for PostgreSQL Server, podsíť musí obsahovat název typu Microsoft. SQL .To be in the ACL for your Azure Database for PostgreSQL server, the subnet must contain the Microsoft.Sql type name.

Pravidlo virtuální sítě přikáže serveru Azure Database for PostgreSQL, aby přijímal komunikaci z každého uzlu, který je v podsíti.A virtual network rule tells your Azure Database for PostgreSQL server to accept communications from every node that is on the subnet.

Výhody pravidla virtuální sítěBenefits of a virtual network rule

Dokud neprovedete akci, virtuální počítače v podsítích nebudou moct komunikovat se serverem Azure Database for PostgreSQL.Until you take action, the VMs on your subnets cannot communicate with your Azure Database for PostgreSQL server. Jedna akce, která stanovuje komunikaci, je vytvoření pravidla virtuální sítě.One action that establishes the communication is the creation of a virtual network rule. Odůvodnění výběru přístupu pravidla virtuální sítě vyžaduje diskuzi o porovnání a kontrastu zahrnující konkurenční možnosti zabezpečení nabízené bránou firewall.The rationale for choosing the VNet rule approach requires a compare-and-contrast discussion involving the competing security options offered by the firewall.

A.A. Povolení přístupu ke službám AzureAllow access to Azure services

Podokno zabezpečení připojení má tlačítko pro zapnutí/vypnutí , které je označeno jako povolený přístup ke službám Azure.The Connection security pane has an ON/OFF button that is labeled Allow access to Azure services. Nastavení on umožňuje komunikaci ze všech IP adres Azure a všech podsítí Azure.The ON setting allows communications from all Azure IP addresses and all Azure subnets. Tyto IP adresy nebo podsítě Azure možná nevlastníte.These Azure IPs or subnets might not be owned by you. Toto Nastavení je pravděpodobně více otevřené, než požadujete, aby byla databáze Azure Database for PostgreSQL.This ON setting is probably more open than you want your Azure Database for PostgreSQL Database to be. Funkce pravidla virtuální sítě nabízí mnohem přesnější kontrolu.The virtual network rule feature offers much finer granular control.

B.B. Pravidla protokolu IPIP rules

Brána Azure Database for PostgreSQL firewall umožňuje zadat rozsahy IP adres, ze kterých se do databáze Azure Database for PostgreSQL akceptují komunikace.The Azure Database for PostgreSQL firewall allows you to specify IP address ranges from which communications are accepted into the Azure Database for PostgreSQL Database. Tento přístup je v pořádku pro stabilní IP adresy, které jsou mimo privátní síť Azure.This approach is fine for stable IP addresses that are outside the Azure private network. Ale mnoho uzlů v privátní síti Azure má nakonfigurovanou dynamickou IP adresu.But many nodes inside the Azure private network are configured with dynamic IP addresses. Dynamické IP adresy se můžou změnit, třeba když se váš virtuální počítač restartuje.Dynamic IP addresses might change, such as when your VM is restarted. V provozním prostředí by se Folly zadat dynamickou IP adresu v pravidle brány firewall.It would be folly to specify a dynamic IP address in a firewall rule, in a production environment.

Možnost IP můžete vyřazením získat statickou IP adresu pro virtuální počítač.You can salvage the IP option by obtaining a static IP address for your VM. Podrobnosti najdete v tématu Konfigurace privátních IP adres pro virtuální počítač pomocí Azure Portal.For details, see Configure private IP addresses for a virtual machine by using the Azure portal.

Přístup ke statickým IP adresám se ale může obtížně spravovat a při velkém rozsahu je nákladný.However, the static IP approach can become difficult to manage, and it is costly when done at scale. Pravidla virtuální sítě je snazší vytvářet a spravovat.Virtual network rules are easier to establish and to manage.

C.C. V podsíti se ještě nedá Azure Database for PostgreSQL bez definování koncového bodu služby.Cannot yet have Azure Database for PostgreSQL on a subnet without defining a service endpoint

Pokud byl váš Microsoft. SQL Server uzlem v podsíti ve vaší virtuální síti, můžou všechny uzly v rámci virtuální sítě komunikovat se serverem Azure Database for PostgreSQL.If your Microsoft.Sql server was a node on a subnet in your virtual network, all nodes within the virtual network could communicate with your Azure Database for PostgreSQL server. V takovém případě můžou vaše virtuální počítače komunikovat s Azure Database for PostgreSQL bez nutnosti používat pravidla virtuální sítě nebo pravidla protokolu IP.In this case, your VMs could communicate with Azure Database for PostgreSQL without needing any virtual network rules or IP rules.

Od srpna 2018 však služba Azure Database for PostgreSQL ještě nepatří mezi služby, které je možné přiřadit přímo do podsítě.However as of August 2018, the Azure Database for PostgreSQL service is not yet among the services that can be assigned directly to a subnet.

Podrobnosti o pravidlech virtuální sítěDetails about virtual network rules

Tato část popisuje několik podrobností o pravidlech virtuální sítě.This section describes several details about virtual network rules.

Jenom jedna geografická oblastOnly one geographic region

Každý koncový bod služby Virtual Network se vztahuje jenom na jednu oblast Azure.Each Virtual Network service endpoint applies to only one Azure region. Koncový bod nepovoluje, aby komunikace z podsítě přijímala jiné oblasti.The endpoint does not enable other regions to accept communication from the subnet.

Jakékoli pravidlo virtuální sítě je omezené na oblast, na kterou se vztahuje příslušný koncový bod.Any virtual network rule is limited to the region that its underlying endpoint applies to.

Na úrovni serveru, nikoli na úrovni databázeServer-level, not database-level

Každé pravidlo virtuální sítě se vztahuje na celý Azure Database for PostgreSQL Server, nikoli jenom na jednu konkrétní databázi na serveru.Each virtual network rule applies to your whole Azure Database for PostgreSQL server, not just to one particular database on the server. Jinými slovy, pravidlo virtuální sítě se vztahuje na úrovni serveru, nikoli na úrovni databáze.In other words, virtual network rule applies at the server-level, not at the database-level.

Role správy zabezpečeníSecurity administration roles

V rámci správy koncových bodů služby Virtual Network je oddělení rolí zabezpečení.There is a separation of security roles in the administration of Virtual Network service endpoints. Pro každou z následujících rolí se vyžaduje akce:Action is required from each of the following roles:

  • Správce sítě:   zapnout koncový bod.Network Admin:   Turn on the endpoint.
  • Správce databáze:   aktualizovat seznam řízení přístupu (ACL) pro přidání dané podsítě do serveru Azure Database for PostgreSQL.Database Admin:   Update the access control list (ACL) to add the given subnet to the Azure Database for PostgreSQL server.

Alternativa RBAC:RBAC alternative:

Role správce sítě a správce databáze mají více možností, než je nutné ke správě pravidel virtuální sítě.The roles of Network Admin and Database Admin have more capabilities than are needed to manage virtual network rules. Je potřeba jenom podmnožina jejich schopností.Only a subset of their capabilities is needed.

V Azure máte možnost použít řízení přístupu na základě role (RBAC) a vytvořit jednu vlastní roli, která bude mít jenom nezbytnou podmnožinu funkcí.You have the option of using role-based access control (RBAC) in Azure to create a single custom role that has only the necessary subset of capabilities. Vlastní roli můžete použít místo zapojení správce sítě nebo správce databáze. Pokud přidáte uživatele do vlastní role a přidáváte uživatele k ostatním dvěma hlavním rolím Správce, oblast Surface vašeho ohrožení zabezpečení je nižší.The custom role could be used instead of involving either the Network Admin or the Database Admin. The surface area of your security exposure is lower if you add a user to a custom role, versus adding the user to the other two major administrator roles.

Poznámka

V některých případech jsou Azure Database for PostgreSQL a VNet-Subnet v různých předplatných.In some cases the Azure Database for PostgreSQL and the VNet-subnet are in different subscriptions. V těchto případech je nutné zajistit následující konfigurace:In these cases you must ensure the following configurations:

  • Oba odběry musí být ve stejném Azure Active Directory tenantovi.Both subscriptions must be in the same Azure Active Directory tenant.
  • Uživatel má požadovaná oprávnění k zahájení operací, jako je například povolení koncových bodů služby a přidání podsítě virtuální sítě do daného serveru.The user has the required permissions to initiate operations, such as enabling service endpoints and adding a VNet-subnet to the given Server.
  • Ujistěte se, že oba odběry mají registrovaného poskytovatele prostředků Microsoft. SQL .Make sure that both the subscription has the Microsoft.Sql resource provider registered. Další informace najdete v tématu Resource-Manager – registrace .For more information refer resource-manager-registration

OmezeníLimitations

Pro Azure Database for PostgreSQL funkce pravidla virtuální sítě má následující omezení:For Azure Database for PostgreSQL, the virtual network rules feature has the following limitations:

  • Webová aplikace může být namapovaná na soukromou IP adresu ve virtuální síti nebo podsíti.A Web App can be mapped to a private IP in a VNet/subnet. I když jsou koncové body služby zapnuté z dané virtuální sítě nebo podsítě, budou připojení z webové aplikace k serveru mít zdroj veřejné IP adresy Azure, ne virtuální síť nebo zdroj podsítě.Even if service endpoints are turned ON from the given VNet/subnet, connections from the Web App to the server will have an Azure public IP source, not a VNet/subnet source. Pokud chcete povolit připojení z webové aplikace k serveru, který má pravidla brány firewall virtuální sítě, musíte povolit službám Azure přístup k serveru na serveru.To enable connectivity from a Web App to a server that has VNet firewall rules, you must Allow Azure services to access server on the server.

  • V bráně firewall pro Azure Database for PostgreSQL se každé pravidlo virtuální sítě odkazuje na podsíť.In the firewall for your Azure Database for PostgreSQL, each virtual network rule references a subnet. Všechny tyto odkazované podsítě musí být hostované ve stejné geografické oblasti, která hostuje Azure Database for PostgreSQL.All these referenced subnets must be hosted in the same geographic region that hosts the Azure Database for PostgreSQL.

  • Každý Azure Database for PostgreSQL Server může mít až 128 položek seznamu řízení přístupu (ACL) pro libovolnou danou virtuální síť.Each Azure Database for PostgreSQL server can have up to 128 ACL entries for any given virtual network.

  • Pravidla virtuální sítě se vztahují jenom na Azure Resource Manager virtuální sítě; a ne pro model nasazení Classic .Virtual network rules apply only to Azure Resource Manager virtual networks; and not to classic deployment model networks.

  • Zapnutím koncových bodů služby virtuální sítě pro Azure Database for PostgreSQL pomocí značky služby Microsoft. SQL se taky povolí koncové body pro všechny služby Azure Database services: Azure Database for MySQL, Azure Database for PostgreSQL, Azure SQL Database a Azure SQL Data Warehouse.Turning ON virtual network service endpoints to Azure Database for PostgreSQL using the Microsoft.Sql service tag also enables the endpoints for all Azure Database services: Azure Database for MySQL, Azure Database for PostgreSQL, Azure SQL Database and Azure SQL Data Warehouse.

  • Podpora koncových bodů služby virtuální sítě je určená jenom pro Pro obecné účely a paměťově optimalizované servery.Support for VNet service endpoints is only for General Purpose and Memory Optimized servers.

  • V bráně firewall se rozsahy IP adres vztahují na následující síťové položky, ale pravidla virtuální sítě ne:On the firewall, IP address ranges do apply to the following networking items, but virtual network rules do not:

ExpressRouteExpressRoute

Pokud je vaše síť připojená k síti Azure prostřednictvím použití ExpressRoute, každý okruh se nakonfiguruje se dvěma veřejnými IP adresami na Microsoft Edge.If your network is connected to the Azure network through use of ExpressRoute, each circuit is configured with two public IP addresses at the Microsoft Edge. Tyto dvě IP adresy se používají pro připojení ke službám Microsoftu, jako je třeba Azure Storage, pomocí veřejného partnerského vztahu Azure.The two IP addresses are used to connect to Microsoft Services, such as to Azure Storage, by using Azure Public Peering.

Aby bylo možné Azure Database for PostgreSQL komunikaci z okruhu, musíte vytvořit pravidla sítě IP pro veřejné IP adresy vašich okruhů.To allow communication from your circuit to Azure Database for PostgreSQL, you must create IP network rules for the public IP addresses of your circuits. Aby bylo možné najít veřejné IP adresy okruhu ExpressRoute, otevřete lístek podpory s ExpressRoute pomocí Azure Portal.In order to find the public IP addresses of your ExpressRoute circuit, open a support ticket with ExpressRoute by using the Azure portal.

Přidání pravidla brány firewall virtuální sítě na server bez zapnutí koncových bodů služby virtuální sítěAdding a VNET Firewall rule to your server without turning On VNET Service Endpoints

Pouze nastavení pravidla brány firewall nezabezpečuje Server do virtuální sítě.Merely setting a Firewall rule does not help secure the server to the VNet. Aby se zabezpečení projevilo, musíte taky zapnout koncové body služby virtuální sítě.You must also turn VNet service endpoints On for the security to take effect. Při zapnutí koncových bodů služby vevaší virtuální síti dojde k výpadku, dokud se přechod neukončí na zapnuto.When you turn service endpoints On, your VNet-subnet experiences downtime until it completes the transition from Off to On. To platí zejména v kontextu velkých virtuální sítě.This is especially true in the context of large VNets. Pomocí příznaku IgnoreMissingServiceEndpoint můžete snížit nebo odstranit výpadky během přechodu.You can use the IgnoreMissingServiceEndpoint flag to reduce or eliminate the downtime during transition.

Příznak IgnoreMissingServiceEndpoint můžete nastavit pomocí Azure CLI nebo portálu.You can set the IgnoreMissingServiceEndpoint flag by using the Azure CLI or portal.

Další krokyNext steps

Články o vytváření pravidel virtuální sítě najdete v těchto tématech:For articles on creating VNet rules, see: