Skip to content

Commit e780e60

Browse files
authored
Merge pull request #115343 from julieMSFT/20200514_storageaccesscontrol
updates to layout
2 parents 3414108 + 1af44b1 commit e780e60

File tree

2 files changed

+14
-14
lines changed

2 files changed

+14
-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: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ 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)
2929

3030
> [!NOTE]
@@ -44,7 +44,7 @@ You can get an SAS token by navigating to the **Azure portal -> Storage Account
4444
4545
You need to create database-scoped or server-scoped credential to enable access using SAS token.
4646

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

4949
**User Identity**, also known as "pass-through", is an authorization type where the identity of the Azure AD user that logged into
5050
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 +88,13 @@ DROP CREDENTIAL [UserIdentity];
8888

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

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

9393
**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.
9494

9595
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.
9696

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

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

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

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

173173
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
174174
with SAS key on the Azure storage that matches URL in credential name.
@@ -182,7 +182,7 @@ WITH IDENTITY='SHARED ACCESS SIGNATURE'
182182
GO
183183
```
184184

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

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

@@ -191,7 +191,7 @@ CREATE CREDENTIAL [UserIdentity]
191191
WITH IDENTITY = 'User Identity';
192192
```
193193

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

196196
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.
197197

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

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

205205
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.
206206

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

221221
Database-scoped credentials enable access to Azure storage using the following authentication types:
222222

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

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

@@ -230,7 +230,7 @@ WITH IDENTITY = 'SHARED ACCESS SIGNATURE', SECRET = 'sv=2018-03-28&ss=bfqt&srt=s
230230
GO
231231
```
232232

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

235235
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.
236236

@@ -240,7 +240,7 @@ WITH IDENTITY = 'User Identity';
240240
GO
241241
```
242242

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

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

0 commit comments

Comments
 (0)