Introduction
To work with Azure ARM in Abiquo, you'll need to add credentials to your Abiquo enterprise.
You can add one set of credentials from a subscription to one Abiquo enterprise only.
Create an Azure subscription.
You may require separate credentials for some groups of regions, for example, regions in China.
Obtain details of the subscription and create an Application with the following Azure attributes:
Subscription ID
Application (client) ID
Directory (tenant) ID
Application password
Follow this guide to obtain give consent for the Application to work with
AccessToken
RefreshToken
Abiquo provides these instructions as a guide only and we update them occasionally.
Abiquo recommends that customers follow the instructions of the cloud provider, for example, at the time of writing for Azure:
Obtain details of your Azure subscription
To obtain details of your Azure subscription, do the following steps.
Log in to the Azure portal
In the Home view, under Azure services, click Subscriptions. Or in the search box in the top menu bar, enter Subscriptions. Then select Subscriptions
Click on your subscription
If the subscription does not display, check that you have selected the correct directory. Click on the directory name in the top right corner. From here you can switch directory
Save the Subscription ID to enter in the Abiquo credentials.
If you purchased the subscription directly from Azure, you can also save the Offer ID for the pricing credentials.
Create an ARM application using Azure portal
Abiquo uses the ARM application ID to access the ARM API and compute features.
To use the platform's billing features only (without the compute features), you do not need an ARM application. See Add credentials of Azure reseller customers for billing only
To create an ARM application using the Azure Portal and obtain details of the application, do these steps.
Log in to the Azure portal
In the Home view, under Azure services, click Azure Active Directory. Or in the search box, enter Azure Active Directory. Select Azure Active Directory
On the left, click App registrations
Click New registration
To register the application, enter a Name, select the Supported account types, and enter a URL. If you know the URI of the partner consent service, enter it now. Or you can enter any URL and edit the application and change this value later. Click Register
Save the Application (client) ID and the Directory (tenant) ID, because you will need to configure them in Abiquo. Then click Certificates & secrets
To configure the password for the application, click New client secret, which will open the Add a client secret section. Enter a Description and an Expiry duration, then click Add
The Azure portal will display the application password ONCE ONLY. You must use this password in Abiquo, so make sure to save it, because Azure will not display it again.
Go to the Subscriptions menu, select the subscription you want to associate the application with, and add a new permission for it with these steps.
Select Access control (IAM)
Click Add
Click Add role assignment
In the dialog, select the Contributor role, and in the Select box, enter the name of the application. Then click Save
Go to the Subscriptions menu again and select Resource providers
Search for the Microsoft.Compute provider and click Register to add it for the subscription if it is not already added
Search for the Microsoft.Network provider and click Register to add it for the subscription if it is not already added
Assign permissions to the App
After you create the App, go to API permissions and add the following permissions.
For each of the permissions:
Click + Add
Click the Grant for … button
Category | Permission |
---|---|
Azure Service Management | user_impersonation |
Microsoft Graph | Application.ReadWrite.All |
RoleManagement.ReadWrite.Directory | |
Microsoft Partner | user_impersonation |
Microsoft Partner Center | user_impersonation |
After you add the permissions, and grant them for your account, the center of the screen should look as follows.
Configure authorization for the use of Azure ARM credentials in the multi-cloud platform
As Azure now requires multi-factor authentication for CSP credentials, you must authorize the use of your credentials in the multi-cloud platform to obtain your access and refresh tokens for use in pricing credentials.
To create your own server to grant consent for the use of your Azure credentials, follow the instructions in the Azure documentation. For general instructions, see https://docs.microsoft.com/en-us/partner-center/develop/partner-center-authentication#app--user-authentication and for Java instructions: https://docs.microsoft.com/en-us/partner-center/develop/partner-center-authentication#java-appuser-authentication.
To complete the configuration:
Log in to the Azure portal
Edit your Azure application
In the Redirect URI, enter the URL of the partner consent service.
Add the Azure ARM compute credentials to Abiquo
Before you add credentials, an administrator must create at least one compatible public cloud region in Azure ARM, and allow your enterprise to access this region. Some regions may require separate credentials, for example, regions in China, and you will need to obtain credentials and create these regions separately. See Create a public cloud region.
To connect Abiquo to your Azure ARM account, add the Azure ARM credentials obtained in the above steps to Abiquo, with the following steps.
Log in to Abiquo
Go to Users view
Edit the enterprise and go to Credentials → Public
Select the Azure ARM provider, and enter the credentials in the following format.
Identity:
subscription-id#app-id#dir-id
This means you should enter the Subscription ID, Application (client) ID, and Directory (tenant) ID, as a single string and separate each element with a '#'. For example:
566058dd-80bc-4ccc-8d6e-e9ac00c4b4a1#8927a710-4f4d-4d11-811c-94c36e9b2c3f#fbb96b71-f92c-4f78-acf7-cd88bdee36b1
Credential: Enter the password for the Application.
Add the Azure CSP pricing and billing credentials to Abiquo
Before you add credentials, your administrator must create at least one compatible public cloud region in Azure ARM, and allow your enterprise to access this region. Some regions may require separate credentials, for example regions in China, and you will need to obtain credentials and create these regions separately. See Create a public cloud region
For CSP accounts, the main tenant should add the pricing credentials in the following format:
csp#dir-id#app-id#accessToken#refreshToken
This means you should enter the text "csp", Directory (tenant) ID, Application (client) ID, access token, and refresh token as a single string and separate each element with a '#'.
The customer tenants do not need to add pricing credentials. The platform will use the CSP credentials for the customer tenants in the hierarchy.
For the billing dashboard, add the access token and refresh token to the configuration. See Display Azure billing data