Skip to content

Commit a266c1f

Browse files
committed
updates to layout
1 parent 279f4e0 commit a266c1f

File tree

2 files changed

+15
-14
lines changed

2 files changed

+15
-14
lines changed

articles/synapse-analytics/sql/develop-openrowset.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ This is a quick and easy way to read the content of the files without pre-config
4343
This option enables you to configure location of the storage account in the data source and specify the authentication method that should be used to access storage.
4444

4545
> [!IMPORTANT]
46-
> `OPENROWSET` without `DATA_SOURCE` provides quick and easy way to access the storage files but offers limited authentication options. As an example, Azure AD principal can access files only using their [Azure AD identity](develop-storage-files-storage-access-control.md#user-identity) and cannot access publicly available files. If you need more powerful authentication options, use `DATA_SOURCE` option and define credential that you want to use to access storage.
46+
> `OPENROWSET` without `DATA_SOURCE` provides quick and easy way to access the storage files but offers limited authentication options. As an example, Azure AD principal can access files only using their [Azure AD identity](develop-storage-files-storage-access-control.md?tabs=user-identity#force-azure-ad-pass-through) and cannot access publicly available files. If you need more powerful authentication options, use `DATA_SOURCE` option and define credential that you want to use to access storage.
4747

4848
## Security
4949

@@ -53,9 +53,9 @@ The storage administrator must also enable a user to access the files by providi
5353

5454
`OPENROWSET` use the following rules to determine how to authenticate to storage:
5555
- In `OPENROWSET` with `DATA_SOURCE` the authentication mechanism depends on caller type.
56-
- AAD logins can access files only using their own [Azure AD identity](develop-storage-files-storage-access-control.md#user-identity) if Azure storage allows the Azure AD user to access underlying files (for example, if the caller has Storage Reader permission on storage) and if you [enable Azure AD passthrough authentication](develop-storage-files-storage-access-control.md#force-azure-ad-pass-through) on Synapse SQL service.
56+
- AAD logins can access files only using their own [Azure AD identity](develop-storage-files-storage-access-control.md?tabs=user-identity#force-azure-ad-pass-through) if Azure storage allows the Azure AD user to access underlying files (for example, if the caller has Storage Reader permission on storage) and if you [enable Azure AD passthrough authentication](develop-storage-files-storage-access-control.md#force-azure-ad-pass-through) on Synapse SQL service.
5757
- SQL logins can also use `OPENROWSET` without `DATA_SOURCE` to access publicly available files, files protected using SAS token or Managed Identity of Synapse workspace. You would need to [create server-scoped credential](develop-storage-files-storage-access-control.md#examples) to allow access to storage files.
58-
- In `OPENROWSET` with `DATA_SOURCE` authentication mechanism is defined in database scoped credential assigned to the referenced data source. This option enables you to access publicly available storage, or access storage using SAS token, Managed Identity of workspace, or [Azure AD identity of caller](develop-storage-files-storage-access-control.md#user-identity) (if caller is Azure AD principal). If `DATA_SOURCE` references Azure storage that is not public, you would need to [create database-scoped credential](develop-storage-files-storage-access-control.md#examples) and reference it in `DATA SOURCE` to allow access to storage files.
58+
- In `OPENROWSET` with `DATA_SOURCE` the authentication mechanism is defined in the database scoped credential assigned to the referenced data source. This option enables you to access publicly available storage, or access storage using SAS token, Managed Identity of workspace, or [Azure AD identity of caller](develop-storage-files-storage-access-control.md?tabs=user-identity#) (if caller is Azure AD principal). If `DATA_SOURCE` references Azure storage that is not public, you would need to [create database-scoped credential](develop-storage-files-storage-access-control.md#examples) and reference it in `DATA SOURCE` to allow access to storage files.
5959

6060
Caller must have `REFERENCES` permission on credential to use it to authenticate to storage.
6161

articles/synapse-analytics/sql/develop-storage-files-storage-access-control.md

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,10 @@ This article describes the types of credentials you can use and how credential l
2323

2424
A user that has logged into a SQL on-demand resource must be authorized to access and query the files in Azure Storage if the files are not publicly available. Three authorization types are supported:
2525

26-
- [User Identity](?tabs=user-identity)
2726
- [Shared access signature](?tabs=shared-access-signature)
27+
- [User Identity](?tabs=user-identity)
2828
- [Managed Identity](?tabs=managed-identity)
29+
- [Anonymous access](?tab=public-access)
2930

3031
> [!NOTE]
3132
> [Azure AD pass-through](#force-azure-ad-pass-through) is the default behavior when you create a workspace. If you use it, you don't need to create credentials for each storage account accessed using Azure AD logins. You can [disable this behavior](#disable-forcing-azure-ad-pass-through).
@@ -44,7 +45,7 @@ You can get an SAS token by navigating to the **Azure portal -> Storage Account
4445
4546
You need to create database-scoped or server-scoped credential to enable access using SAS token.
4647

47-
### User Identity
48+
### [User Identity](#tab/user-identity)
4849

4950
**User Identity**, also known as "pass-through", is an authorization type where the identity of the Azure AD user that logged into
5051
SQL on-demand is used to authorize data access. Before accessing the data, the Azure Storage administrator must grant permissions to the Azure AD user. As indicated in the table above, it's not supported for the SQL user type.
@@ -88,13 +89,13 @@ DROP CREDENTIAL [UserIdentity];
8889

8990
If you want to re-enable it again, refer to the [force Azure AD pass-through](#force-azure-ad-pass-through) section.
9091

91-
### Managed Identity
92+
### [Managed Identity](#tab/managed-identity)
9293

9394
**Managed Identity** is also known as MSI. It's a feature of Azure Active Directory (Azure AD) that provides Azure services for SQL on-demand. Also, it deploys an automatically managed identity in Azure AD. This identity can be used to authorize the request for data access in Azure Storage.
9495

9596
Before accessing the data, the Azure Storage administrator must grant permissions to Managed Identity for accessing the data. Granting permissions to Managed Identity is done the same way as granting permission to any other Azure AD user.
9697

97-
### Anonymous access
98+
### [Anonymous access](#tab/public-access)
9899

99100
You can access publicly available files placed on Azure storage accounts that [allow anonymous access](/azure/storage/blobs/storage-manage-access-to-resources.md).
100101

@@ -168,7 +169,7 @@ Server-level CREDENTIAL name must match the full path to the storage account (an
168169
169170
Server-scoped credentials enable access to Azure storage using the following authentication types:
170171

171-
### Shared access signature
172+
### [Shared access signature](#tab/shared-access-signature)
172173

173174
The following script creates a server-level credential that can be used by `OPENROWSET` function to access any file on Azure storage using SAS token. Create this credential to enable SQL principal that executes `OPENROWSET` function to read files protected
174175
with SAS key on the Azure storage that matches URL in credential name.
@@ -182,7 +183,7 @@ WITH IDENTITY='SHARED ACCESS SIGNATURE'
182183
GO
183184
```
184185

185-
### User Identity
186+
### [User Identity](#tab/user-identity)
186187

187188
The following script creates a server-level credential that enables user to impersonate using Azure AD identity.
188189

@@ -191,7 +192,7 @@ CREATE CREDENTIAL [UserIdentity]
191192
WITH IDENTITY = 'User Identity';
192193
```
193194

194-
### Managed Identity
195+
### [Managed Identity](#tab/managed-identity)
195196

196197
The following script creates a server-level credential that can be used by `OPENROWSET` function to access any file on Azure storage using workspace managed identity.
197198

@@ -200,7 +201,7 @@ CREATE CREDENTIAL [https://<mystorageaccountname>.blob.core.windows.net/<mystora
200201
WITH IDENTITY='Managed Identity'
201202
```
202203

203-
### Public access
204+
### [Public access](#tab/public-access)
204205

205206
The following script creates a server-level credential that can be used by `OPENROWSET` function to access any file on publicly available Azure storage. Create this credential to enable SQL principal that executes `OPENROWSET` function to read publicly available files on Azure storage that matches URL in credential name.
206207

@@ -220,7 +221,7 @@ Database-scoped credentials are used when any principal calls `OPENROWSET` funct
220221

221222
Database-scoped credentials enable access to Azure storage using the following authentication types:
222223

223-
### Shared access signature
224+
### [Shared access signature](#tab/shared-access-signature)
224225

225226
The following script creates a credential that is used to access files on storage using SAS token specified in the credential.
226227

@@ -230,7 +231,7 @@ WITH IDENTITY = 'SHARED ACCESS SIGNATURE', SECRET = 'sv=2018-03-28&ss=bfqt&srt=s
230231
GO
231232
```
232233

233-
### Azure AD Identity
234+
### [Azure AD Identity](#tab/user-identity)
234235

235236
The following script creates a database-scoped credential that is used by [external table](develop-tables-external-tables.md) and `OPENROWSET` functions that use data source with credential to access storage files using their own Azure AD identity.
236237

@@ -240,7 +241,7 @@ WITH IDENTITY = 'User Identity';
240241
GO
241242
```
242243

243-
### Managed Identity
244+
### [Managed Identity](#tab/managed-identity)
244245

245246
The following script creates a database-scoped credential that can be used to impersonate current Azure AD user as Managed Identity of service.
246247

0 commit comments

Comments
 (0)