diff --git a/kamelets/azure-eventhubs-sink.kamelet.yaml b/kamelets/azure-eventhubs-sink.kamelet.yaml index 15ff0924e..e87cb0fbd 100644 --- a/kamelets/azure-eventhubs-sink.kamelet.yaml +++ b/kamelets/azure-eventhubs-sink.kamelet.yaml @@ -37,11 +37,13 @@ spec: The Kamelet checks for the `partition-id` / `ce-partition-id` header which is an identifier of the Event Hub partition that the event will be sent to. If the identifier is not specified, the Event Hubs service will be responsible for routing events that are sent to an available partition. A header is optional. If the header is not set, the partition is assigned by Event Hubs. + + There are two different mechanism of authentication `CONNECTION_STRING` and `AZURE_IDENTITY`, you could specify with credentialType property. If you're using `CONNECTION_STRING` sharedAccessName and sharedAccessKey properties will be needed. + + In case of `AZURE_IDENTITY` selection, the DefaultAzureCredential will attempt to authenticate via the following mechanisms in the following order enviroment, Workload Identity, Managed Identity, Azure Developer CLI, IntelliJ, Azure CLI and Azure Powershell. required: - namespaceName - eventhubName - - sharedAccessName - - sharedAccessKey type: object properties: namespaceName: @@ -65,6 +67,12 @@ spec: format: password x-descriptors: - urn:camel:group:credentials + credentialType: + title: Credential Type + description: Determines the credential strategy to adopt. + type: string + enum: ["CONNECTION_STRING", "AZURE_IDENTITY"] + default: "CONNECTION_STRING" dependencies: - "camel:core" - "camel:azure-eventhubs" @@ -88,5 +96,6 @@ spec: - to: uri: "azure-eventhubs://{{namespaceName}}/{{eventhubName}}" parameters: - sharedAccessName: "{{sharedAccessName}}" - sharedAccessKey: "{{sharedAccessKey}}" + sharedAccessName: "{{?sharedAccessName}}" + sharedAccessKey: "{{?sharedAccessKey}}" + credentialType: "{{credentialType}}" diff --git a/kamelets/azure-eventhubs-source.kamelet.yaml b/kamelets/azure-eventhubs-source.kamelet.yaml index 25297d273..e12220be7 100644 --- a/kamelets/azure-eventhubs-source.kamelet.yaml +++ b/kamelets/azure-eventhubs-source.kamelet.yaml @@ -33,11 +33,13 @@ spec: title: "Azure Eventhubs Source" description: |- Receive events from Azure Event Hubs. + + There are two different mechanism of authentication `CONNECTION_STRING` and `AZURE_IDENTITY`, you could specify with credentialType property. If you're using `CONNECTION_STRING` sharedAccessName and sharedAccessKey properties will be needed. + + In case of `AZURE_IDENTITY` selection, the DefaultAzureCredential will attempt to authenticate via the following mechanisms in the following order enviroment, Workload Identity, Managed Identity, Azure Developer CLI, IntelliJ, Azure CLI and Azure Powershell. required: - namespaceName - eventhubName - - sharedAccessName - - sharedAccessKey - blobAccountName - blobAccessKey - blobContainerName @@ -79,6 +81,12 @@ spec: format: password x-descriptors: - urn:camel:group:credentials + credentialType: + title: Credential Type + description: Determines the credential strategy to adopt. + type: string + enum: ["CONNECTION_STRING", "AZURE_IDENTITY"] + default: "CONNECTION_STRING" types: out: mediaType: application/octet-stream @@ -90,10 +98,11 @@ spec: from: uri: 'azure-eventhubs://{{namespaceName}}/{{eventhubName}}' parameters: - sharedAccessName: "{{sharedAccessName}}" - sharedAccessKey: "{{sharedAccessKey}}" + sharedAccessName: "{{?sharedAccessName}}" + sharedAccessKey: "{{?sharedAccessKey}}" blobAccountName: "{{blobAccountName}}" blobAccessKey: "{{blobAccessKey}}" blobContainerName: "{{blobContainerName}}" + credentialType: "{{credentialType}}" steps: - to: "kamelet:sink" diff --git a/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-sink.kamelet.yaml b/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-sink.kamelet.yaml index 15ff0924e..e87cb0fbd 100644 --- a/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-sink.kamelet.yaml +++ b/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-sink.kamelet.yaml @@ -37,11 +37,13 @@ spec: The Kamelet checks for the `partition-id` / `ce-partition-id` header which is an identifier of the Event Hub partition that the event will be sent to. If the identifier is not specified, the Event Hubs service will be responsible for routing events that are sent to an available partition. A header is optional. If the header is not set, the partition is assigned by Event Hubs. + + There are two different mechanism of authentication `CONNECTION_STRING` and `AZURE_IDENTITY`, you could specify with credentialType property. If you're using `CONNECTION_STRING` sharedAccessName and sharedAccessKey properties will be needed. + + In case of `AZURE_IDENTITY` selection, the DefaultAzureCredential will attempt to authenticate via the following mechanisms in the following order enviroment, Workload Identity, Managed Identity, Azure Developer CLI, IntelliJ, Azure CLI and Azure Powershell. required: - namespaceName - eventhubName - - sharedAccessName - - sharedAccessKey type: object properties: namespaceName: @@ -65,6 +67,12 @@ spec: format: password x-descriptors: - urn:camel:group:credentials + credentialType: + title: Credential Type + description: Determines the credential strategy to adopt. + type: string + enum: ["CONNECTION_STRING", "AZURE_IDENTITY"] + default: "CONNECTION_STRING" dependencies: - "camel:core" - "camel:azure-eventhubs" @@ -88,5 +96,6 @@ spec: - to: uri: "azure-eventhubs://{{namespaceName}}/{{eventhubName}}" parameters: - sharedAccessName: "{{sharedAccessName}}" - sharedAccessKey: "{{sharedAccessKey}}" + sharedAccessName: "{{?sharedAccessName}}" + sharedAccessKey: "{{?sharedAccessKey}}" + credentialType: "{{credentialType}}" diff --git a/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-source.kamelet.yaml b/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-source.kamelet.yaml index 25297d273..e12220be7 100644 --- a/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-source.kamelet.yaml +++ b/library/camel-kamelets/src/main/resources/kamelets/azure-eventhubs-source.kamelet.yaml @@ -33,11 +33,13 @@ spec: title: "Azure Eventhubs Source" description: |- Receive events from Azure Event Hubs. + + There are two different mechanism of authentication `CONNECTION_STRING` and `AZURE_IDENTITY`, you could specify with credentialType property. If you're using `CONNECTION_STRING` sharedAccessName and sharedAccessKey properties will be needed. + + In case of `AZURE_IDENTITY` selection, the DefaultAzureCredential will attempt to authenticate via the following mechanisms in the following order enviroment, Workload Identity, Managed Identity, Azure Developer CLI, IntelliJ, Azure CLI and Azure Powershell. required: - namespaceName - eventhubName - - sharedAccessName - - sharedAccessKey - blobAccountName - blobAccessKey - blobContainerName @@ -79,6 +81,12 @@ spec: format: password x-descriptors: - urn:camel:group:credentials + credentialType: + title: Credential Type + description: Determines the credential strategy to adopt. + type: string + enum: ["CONNECTION_STRING", "AZURE_IDENTITY"] + default: "CONNECTION_STRING" types: out: mediaType: application/octet-stream @@ -90,10 +98,11 @@ spec: from: uri: 'azure-eventhubs://{{namespaceName}}/{{eventhubName}}' parameters: - sharedAccessName: "{{sharedAccessName}}" - sharedAccessKey: "{{sharedAccessKey}}" + sharedAccessName: "{{?sharedAccessName}}" + sharedAccessKey: "{{?sharedAccessKey}}" blobAccountName: "{{blobAccountName}}" blobAccessKey: "{{blobAccessKey}}" blobContainerName: "{{blobContainerName}}" + credentialType: "{{credentialType}}" steps: - to: "kamelet:sink"