You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Optional deployment of Private Networks, Private Endpoints plus optional configuration of an ACL rule for all backend services (#864)
Add `AZURE_USE_PRIVATE_ENDPOINT` and `AZURE_PUBLIC_NETWORK_ACCESS` for private connectivity.
Add options for provisioning VM to connect to private chat app
1.`AZURE_PUBLIC_NETWORK_ACCESS`: Controls the value of public network access on supported Azure resources. Valid values are 'Enabled' or 'Disabled'.
19
+
1. When public network access is 'Enabled', Azure resources are open to the internet.
20
+
1. When public network access is 'Disabled', Azure resources are only accessible over a virtual network.
21
+
1.`AZURE_USE_PRIVATE_ENDPOINT`: Controls deployment of [private endpoints](https://learn.microsoft.com/azure/private-link/private-endpoint-overview) which connect Azure resources to the virtual network.
22
+
1. When set to 'true', ensures private endpoints are deployed for connectivity even when `AZURE_PUBLIC_NETWORK_ACCESS` is 'Disabled'.
23
+
1. Note that private endpoints do not make the chat app accessible from the internet. Connections must be initiated from inside the virtual network.
24
+
1.`AZURE_PROVISION_VM`: Controls deployment of a [virtual machine](https://learn.microsoft.com/azure/virtual-machines/overview) and [Azure Bastion](https://learn.microsoft.com/azure/bastion/bastion-overview). Azure Bastion allows you to securely connect to the virtual machine, without being connected virtual network. Since the virtual machine is connected to the virtual network, you are able to access the chat app.
25
+
1. You must set `AZURE_VM_USERNAME` and `AZURE_VM_PASSWORD` to provision the built-in administrator account with the virtual machine so you can log in through Azure Bastion.
26
+
1. By default, a server version of Windows is used for the VM. If you need to [enroll your device in Microsoft Intune](https://learn.microsoft.com/mem/intune/user-help/enroll-windows-10-device), you should use a desktop version of Windows by setting the following environment variables:
27
+
*`azd env set AZURE_VM_OS_PUBLISHER MicrosoftWindowsDesktop`
28
+
*`azd env set AZURE_VM_OS_OFFER Windows-11`
29
+
*`azd env set AZURE_VM_OS_VERSION win11-23h2-pro`
30
+
31
+
## Recommended deployment strategy for private access
32
+
33
+
1. Deploy the app with private endpoints enabled and public access enabled.
34
+
```
35
+
azd env set AZURE_USE_PRIVATE_ENDPOINT true
36
+
azd env set AZURE_PUBLIC_NETWORK_ACCESS Enabled
37
+
azd up
38
+
```
39
+
2. Validate that you can connect to the chat app and it's working as expected from the internet.
40
+
3. Re-provision the app with public access disabled.
41
+
```
42
+
azd env set AZURE_PUBLIC_NETWORK_ACCESS Disabled
43
+
azd env set AZURE_PROVISION_VM true # Optional but recommended
44
+
azd env set AZURE_VM_USERNAME myadminusername # https://learn.microsoft.com/azure/virtual-machines/windows/faq#what-are-the-username-requirements-when-creating-a-vm-
45
+
azd env set AZURE_VM_PASSWORD mypassword # https://learn.microsoft.com/azure/virtual-machines/windows/faq#what-are-the-password-requirements-when-creating-a-vm-
46
+
azd provision
47
+
```
48
+
4. Log into your new VM using [Azure Bastion](https://learn.microsoft.com/azure/bastion/tutorial-create-host-portal#connect). Validate the chat app is accessible from the virtual machine using a web browser.
Copy file name to clipboardExpand all lines: docs/login_and_acl.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -143,7 +143,7 @@ In both the chat and ask a question modes, under **Developer settings** optional
143
143
144
144
The sample supports 2 main strategies for adding data with document level access control.
145
145
146
-
*[Using the Add Documents API](#using-the-add-documents-api). Sample scripts are provided which use the Azure AI Search Service [Add Documents API](https://learn.microsoft.com/rest/api/searchservice/documents/?view=rest-searchservice-2023-11-01&tabs=HTTP) to directly manage access control information on _existing documents_ in the index.
146
+
*[Using the Add Documents API](#using-the-add-documents-api). Sample scripts are provided which use the Azure AI Search Service Add Documents API to directly manage access control information on _existing documents_ in the index.
147
147
*[Using prepdocs and Azure Data Lake Storage Gen 2](#azure-data-lake-storage-gen2-setup). Sample scripts are provided which set up an [Azure Data Lake Storage Gen 2](https://learn.microsoft.com/azure/storage/blobs/data-lake-storage-introduction) account, set the [access control information](https://learn.microsoft.com/azure/storage/blobs/data-lake-storage-access-control) on files and folders stored there, and ingest those documents into the search index with their access control information.
Copy file name to clipboardExpand all lines: docs/productionizing.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,7 +59,7 @@ and scale up the maximum/minimum based on load.
59
59
***Authentication**: By default, the deployed app is publicly accessible.
60
60
We recommend restricting access to authenticated users.
61
61
See [Enabling authentication](./deploy_features.md#enabling-authentication) to learn how to enable authentication.
62
-
***Networking**: We recommend deploying inside a Virtual Network. If the app is only for
62
+
***Networking**: We recommend [deploying inside a Virtual Network](./deploy_private.md). If the app is only for
63
63
internal enterprise use, use a private DNS zone. Also consider using Azure API Management (APIM)
64
64
for firewalls and other forms of protection.
65
65
For more details, read [Azure OpenAI Landing Zone reference architecture](https://techcommunity.microsoft.com/t5/azure-architecture-blog/azure-openai-landing-zone-reference-architecture/ba-p/3882102).
0 commit comments