Hi Bobi_Bao are there any further changes needed to move azure durable functions to managed identity based authentication? I have a queue-triggered client durable function. However it doesn't seem to work: when I add a message to the queue, the function is not triggered. I have done the steps mentioned in your blog and assigned storage blob, queue and table data contributor roles to the function app for the storage account it is connected to. Please find my code below, any help is appreciated! Thanks!
__init__.py:
async def main(msg: QueueMessage, starter: str) -> None:
"""Orchestrator function to process the PDF and split it into pages."""
payload = msg.get_body().decode("utf-8")
client = df.DurableOrchestrationClient(starter)
instance_id = await client.start_new(
"process_pdf",
client_input=payload,
)
logging.info(f"Started orchestration with ID = '{instance_id}'")
logging.info(f"[Queue Client] Received queue message: {payload}")
function.json:
{
"scriptFile": "__init__.py",
"bindings": [
{
"name": "msg",
"type": "queueTrigger",
"direction": "in",
"queueName": "inference-pipeline-process-pdf",
"connection": "AzureWebJobsStorage"
},
{
"name":"starter",
"type": "durableClient",
"direction": "in"
}
]
}