|
26 | 26 | "\n", |
27 | 27 | "## Permissions\n", |
28 | 28 | "\n", |
| 29 | + "This walkthrough uses Microsoft Entra ID authentication and authorization.\n", |
| 30 | + "\n", |
29 | 31 | "+ On Azure Storage, **Storage Blob Data Reader** permissions are required for both the search service identity and for your user account since you are testing locally. You also need **Storage Blob Data Contributor** because the sample includes code for creating and configuring a container and its contents.\n", |
30 | 32 | "\n", |
31 | 33 | "+ On Azure AI Search, assign yourself **Search Service Contributor**, **Search Index Data Contributor**, and **Search Index Data Reader** permissions to create objects and run queries. For more information, see [Connect to Azure AI Search using roles](https://learn.microsoft.com/azure/search/search-security-rbac) and [Quickstart: Connect without keys for local testing](https://learn.microsoft.com/azure/search/search-get-started-rbac).\n", |
|
42 | 44 | "source": [ |
43 | 45 | "## Set up connections\n", |
44 | 46 | "\n", |
45 | | - "Save the `sample.env` file as `.env` and then modify the environment variables to use your Azure endpoints. You need endpoints for:\n", |
| 47 | + "Save the `sample.env` file as `.env` and then modify the environment variables to use your Azure endpoints. All variables must be specified.\n", |
| 48 | + "\n", |
| 49 | + "You need endpoints for:\n", |
46 | 50 | "\n", |
47 | 51 | "+ Azure AI Search\n", |
48 | 52 | "+ Azure Storage\n", |
49 | 53 | "\n", |
50 | 54 | "For Azure AI Search, find the endpoint in the [Azure portal](https://portal.azure.com), in the **Essentials** section of the Overview page.\n", |
51 | 55 | "\n", |
52 | | - "For Azure Storage, follow the guidance in [Get storage account configuration information](https://learn.microsoft.com/azure/storage/common/storage-account-get-info).\n", |
| 56 | + "For Azure Storage, follow the guidance in [Get storage account configuration information](https://learn.microsoft.com/azure/storage/common/storage-account-get-info) to specify all of the variables in the `.env` file. \n", |
| 57 | + "\n", |
53 | 58 | "\n", |
54 | 59 | "## Load Connections\n", |
55 | 60 | "\n", |
|
91 | 96 | "source": [ |
92 | 97 | "## Create an index\n", |
93 | 98 | "\n", |
94 | | - "The search index must include fields for your content and for permission metadata. Assign the new permission filter option to a string field and make sure the field is filterable. The search engine builds the filter internally at query time.\n", |
95 | | - "\n", |
96 | | - "For local testing, `retrievable` should be **true** so that you can view the permission metadata, but be sure to change it back to **false** if you make the solution available to others." |
| 99 | + "The search index must include fields for your content and for permission metadata. Assign the new permission filter option to a string field and make sure the field is filterable. The search engine builds the filter internally at query time." |
97 | 100 | ] |
98 | 101 | }, |
99 | 102 | { |
|
112 | 115 | " fields=[\n", |
113 | 116 | " SearchField(name=\"id\", type=\"Edm.String\", key=True, filterable=True, sortable=True),\n", |
114 | 117 | " SearchField(name=\"content\", type=\"Edm.String\", searchable=True, filterable=False, sortable=False),\n", |
115 | | - " SearchField(name=\"oids\", type=\"Collection(Edm.String)\", filterable=True, retrievable=True, permission_filter=PermissionFilter.USER_IDS),\n", |
116 | | - " SearchField(name=\"groups\", type=\"Collection(Edm.String)\", filterable=True, retrievable=True, permission_filter=PermissionFilter.GROUP_IDS),\n", |
| 118 | + " SearchField(name=\"oids\", type=\"Collection(Edm.String)\", filterable=True, permission_filter=PermissionFilter.USER_IDS),\n", |
| 119 | + " SearchField(name=\"groups\", type=\"Collection(Edm.String)\", filterable=True, permission_filter=PermissionFilter.GROUP_IDS),\n", |
117 | 120 | " SearchField(name=\"metadata_storage_path\", type=\"Edm.String\", searchable=True),\n", |
118 | 121 | " SearchField(name=\"metadata_storage_name\", type=\"Edm.String\", searchable=True)\n", |
119 | 122 | " ],\n", |
|
0 commit comments