8

I am trying to deploy a solution as a managed application through ARM Template. For the deployment to work, I need the Client Id and Client Secret of a registered Application along with the Tenant Id.

In my previous scope, I was assuming that the user would have an existing App Registered but now I want to Automate the App registration process for the user and be able to register an application having O365 API Permissions in user's tenant.

Below is the approach I were following earlier.

Earlier Approach

So unlike above approach, I am now trying to create either a Web Application or a Function Application which would authenticate the User and register the Application for them.

Saurab
  • 113
  • 3
  • 8
  • If my answer is helpful for you, you can accept it as answer( click on the check mark beside the answer to toggle it from greyed out to filled in.). See https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work. This can be beneficial to other community members. Thank you. – Allen Wu Nov 17 '20 at 02:13

2 Answers2

10

No, it's impossible.

ARM Template is used to create Azure resources under Azure subscription. But App Registration is the resource of Azure AD module. They are two different areas.

A similar discussion here for your reference.

You can use Azure AD Powershell to create the Azure AD app and create the client secret by using New-AzureADApplication and New-AzureADApplicationPasswordCredential.

Allen Wu
  • 15,529
  • 1
  • 9
  • 20
5

I'm facing a similar problem and seems that ARM deployment scripts may be the answer:

https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deployment-script-template

this post gives an example on how to create app registrations with ARM deployment scripts:

https://moimhossain.com/2020/04/03/azure-ad-app-via-arm-template-deployment-scripts/