Skip to content

Commit 014fc1f

Browse files
Including diagnostic events connection permissions
1 parent 820cdc2 commit 014fc1f

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

includes/functions-azurewebjobsstorage-permissions.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,18 @@ ms.date: 10/08/2021
66
ms.author: mahender
77
---
88

9-
You will need to create a role assignment that provides access to the storage account for "AzureWebJobsStorage" at runtime. Management roles like [Owner](../articles/role-based-access-control/built-in-roles.md#owner) are not sufficient. The [Storage Blob Data Owner] role covers the basic needs of Functions host storage - the runtime needs both read and write access to blobs and the ability to create containers. Several extensions use this connection as a default location for blobs, queues, and tables, and these uses may add requirements as noted in the table below. You may need additional permissions if you use "AzureWebJobsStorage" for any other purposes.
9+
You need to create a role assignment that provides access to the storage account for "AzureWebJobsStorage" at runtime. Management roles like [Owner](../articles/role-based-access-control/built-in-roles.md#owner) aren't sufficient. The [Storage Blob Data Owner] role covers the basic needs of Functions host storage - the runtime needs both read and write access to blobs and the ability to create containers. Several extensions use this connection as a default location for blobs, queues, and tables, and these uses may add requirements as noted in the table below. You may also need other permissions if you use "AzureWebJobsStorage" for any other purposes.
1010

1111
| Extension | Roles required | Explanation |
1212
|----------------------------|----------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
13-
| _No extension (host only)_ | [Storage Blob Data Owner] | Used for general coordination, default key store |
14-
| Azure Blobs (trigger only) | All of:<br/>[Storage Account Contributor],<br/>[Storage Blob Data Owner],<br/>[Storage Queue Data Contributor] | The blob trigger internally uses Azure Queues and writes [blob receipts]. It uses AzureWebJobsStorage for these, regardless of the connection configured for the trigger. |
13+
| _No extension (host only)_ | [Storage Blob Data Owner] | Functions uses blob storage for general coordination and as a default key store.<br/><br/>This scenario represents the minimum set of permissions for normal operation, but it doesn't include support for diagnostic events<sup>1</sup>. |
14+
| _No extension (host only), with support for diagnostic events<sup>1<sup>_ | [Storage Blob Data Owner],<br/>[Storage Table Data Contributor] | Diagnostic events are persisted in table storage using the AzureWebJobsStorage connection.|
15+
| Azure Blobs (trigger only) | All of:<br/>[Storage Account Contributor],<br/>[Storage Blob Data Owner],<br/>[Storage Queue Data Contributor] | The blob trigger internally uses Azure Queues and writes [blob receipts]. It uses the AzureWebJobsStorage connection for these purposes, regardless of the connection configured for the trigger. |
1516
| Azure Event Hubs (trigger only) | (no change from default requirement)<br/>[Storage Blob Data Owner] | Checkpoints are persisted in blobs using the AzureWebJobsStorage connection. |
1617
| Timer trigger | (no change from default requirement)<br/>[Storage Blob Data Owner] | To ensure one execution per event, locks are taken with blobs using the AzureWebJobsStorage connection. |
17-
| Durable Functions | All of:<br/>[Storage Blob Data Contributor],<br/>[Storage Queue Data Contributor],<br/>[Storage Table Data Contributor] | Durable Functions uses blobs, queues, and tables to coordinate activity functions and maintain orchestration state. It uses the AzureWebJobsStorage connection for all of these by default, but you can specify a different connection in the [Durable Functions extension configuration]. |
18-
18+
| Durable Functions | All of:<br/>[Storage Blob Data Contributor],<br/>[Storage Queue Data Contributor],<br/>[Storage Table Data Contributor] | Durable Functions uses blobs, queues, and tables to coordinate activity functions and maintain orchestration state. It uses the AzureWebJobsStorage connection by default, but you can specify a different connection in the [Durable Functions extension configuration]. |
1919

20+
<sup>1</sup> For some types of issues, Azure Functions can raise a diagnostic event that can assist with troubleshooting, even when the issue prevents the function app from starting. If [Storage Table Data Contributor] isn't assigned, you might see warnings in your logs about the inability to write these events.
2021

2122
[Storage Account Contributor]: ../articles/role-based-access-control/built-in-roles.md#storage-account-contributor
2223
[Storage Blob Data Owner]: ../articles/role-based-access-control/built-in-roles.md#storage-blob-data-owner

0 commit comments

Comments
 (0)