Skip to content

Commit

Permalink
docs(event-hubs): Provide authentication parameter for connection str…
Browse files Browse the repository at this point in the history
…ings (kedacore#994)
  • Loading branch information
tomkerkhove authored Dec 2, 2022
1 parent 15c2a29 commit e495305
Show file tree
Hide file tree
Showing 10 changed files with 172 additions and 29 deletions.
14 changes: 13 additions & 1 deletion content/docs/2.0/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,19 @@ triggers:

### Authentication Parameters

Not supported yet.
You can authenticate by using connection string authentication.

**Connection String Authentication:**

- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

### Example

Expand Down
20 changes: 17 additions & 3 deletions content/docs/2.1/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,25 @@ triggers:

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
20 changes: 17 additions & 3 deletions content/docs/2.2/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,25 @@ triggers:

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
20 changes: 17 additions & 3 deletions content/docs/2.3/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,25 @@ triggers:

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
20 changes: 17 additions & 3 deletions content/docs/2.4/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,25 @@ triggers:

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
21 changes: 18 additions & 3 deletions content/docs/2.5/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,28 @@ triggers:
> 💡 Learn more about the checkpointing behaviour in this [section](#checkpointing-behaviour).

> 💡 The Azure Storage connection string is not compatible with connection string created from a Shared Access Signature.

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
21 changes: 18 additions & 3 deletions content/docs/2.6/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,28 @@ triggers:
> 💡 Learn more about the checkpointing behaviour in this [section](#checkpointing-behaviour).

> 💡 The Azure Storage connection string is not compatible with connection string created from a Shared Access Signature.

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
21 changes: 18 additions & 3 deletions content/docs/2.7/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,28 @@ triggers:
> 💡 Learn more about the checkpointing behaviour in this [section](#checkpointing-behaviour).

> 💡 The Azure Storage connection string is not compatible with connection string created from a Shared Access Signature.

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Pod Identity](https://azure.github.io/aad-pod-identity/docs/demo/standard_walkthrough/) if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
21 changes: 18 additions & 3 deletions content/docs/2.8/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,28 @@ triggers:
> 💡 Learn more about the checkpointing behaviour in this [section](#checkpointing-behaviour).

> 💡 The Azure Storage connection string is not compatible with connection string created from a Shared Access Signature.

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand Down
23 changes: 19 additions & 4 deletions content/docs/2.9/scalers/azure-event-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,13 +61,28 @@ triggers:
> 💡 Learn more about the checkpointing behaviour in this [section](#checkpointing-behaviour).

> 💡 The Azure Storage connection string is not compatible with connection string created from a Shared Access Signature.

### Authentication Parameters

The common way of authenticating to Azure Event Hub is by using the connection string. However, you can use [Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers if you host your cluster in Azure AKS, and if have configured it to support Pod Identity.
You can authenticate by using pod identity or connection string authentication.

To use Pod Identity, you have to add a [TriggerAuthentication](../concepts/authentication.md#re-use-credentials-and-delegate-auth-with-triggerauthentication) and configure it to use Pod Identity like so:
**Connection String Authentication:**

```
- `connection` - Connection string for the Azure Event Hubs Namespace.

The following formats are supported.

- With **SharedAccessKey** - `Endpoint=sb://<sb>.servicebus.windows.net/;SharedAccessKeyName=<key name>;SharedAccessKey=<key value>;EntityPath=<hub-name>`.

- `storageConnection` - Connection string for the Azure Storage Account used to store checkpoint information.

> 💡 When providing `connection`, `EntityPath` is optional. If it is not provided, then `eventHubName` must be used to provide the name of the Azure Event Hub instance to use inside the namespace.

**Pod identity based authentication:**

[Azure AD Pod Identity](https://docs.microsoft.com/en-us/azure/aks/use-azure-ad-pod-identity) or [Azure AD Workload Identity](https://azure.github.io/azure-workload-identity/docs/) providers can be used.

```yaml
apiVersion: keda.sh/v1alpha1
kind: TriggerAuthentication
metadata:
Expand All @@ -78,7 +93,7 @@ spec:
provider: Azure | azure-workload
```

When you do so, the Event Hub scaler will depend on the existence of two configurations you have to provide: `eventHubNamespace` and `eventHubName`. You can also configure `storageAccountName` if you wish to use Azure AD Pod / Workload Identity to authenticate to Azure Blob Storage instead of a connection string.
When you do so, the Event Hub scaler will depend on the existence of two configurations you have to provide: `eventHubNamespace` and `eventHubName`. You can also configure `storageAccountName` if you wish to use Azure AD Pod / Workload Identity to authenticate to Azure Blob Storage instead of a connection string.

> 💡 When using Azure AD Pod Identity to authenticate the identity must have appropriate [RBAC role-assignments](https://docs.microsoft.com/azure/role-based-access-control/role-assignments-steps) for both Event Hub and Storage Account. Permissions covered by `Azure Event Hubs Data Receiver` and `Storage Blob Data Reader` are required.

Expand Down

0 comments on commit e495305

Please sign in to comment.