Introduction
To work with Microsoft Partner Center in Abiquo, add pricing credentials to your Abiquo reseller enterprise.
Create an Application with the following Azure attributes:
Application (client) ID
Directory (tenant) ID
Application password
Follow this guide to 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:
Create an ARM application using Azure portal
Log in to the Azure portal using a user with Admin agent role
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 (Account in any organizational directory), 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 theDirectory (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.
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
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.
Add the application’s service principal to the Admin agents group in the CSP Partner’s Azure AD Active directory.
You can search forMicrosoft Partner
andMicrosoft Partner Center
using their application IDs, which are4990cffe-04e8-4e8b-808a-1175604b879f
andfa3d9a0c-3fb0-42cc-9193-47c7ecd2edbd
respectively, in the APIs my organization owns section.
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 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, in the main tenant, you should add the pricing credentials in the following format:
csp#dir-id#app-id#accessToken#refreshToken
This means you should enter the text csp#
, the Directory (tenant) ID, Application (client) ID, access token, and refresh token as a single string and separate each element with a #
number/hash character.
Also you should add the billing enterprise properties in the reseller enterprise. The default values are as follows:
azurecompute-arm_discount = 0
azurecompute-arm_currency_code = USD
billing.azure.country_code = US
azurecompute-arm_price_factor = 1 (deprecated in Abiquo 6.1). For Abiquo 6.1+, go to Pricing → Price factors and create a price factor for the reseller enterprise. See Manage price factors.
Obtain credentials for CSP customers
To activate compute and billing for a CSP customer, create an app in the customer’s Active Directory and https://abiquo.atlassian.net/wiki/spaces/doc/pages/311370762/Obtain+Azure+ARM+credentials#Add-the-Azure-ARM-compute-credentials-to-Abiquo to the customer enterprise.
If your customers will use billing only, then you can enter the subscription and tenant details only. See Add credentials of Azure reseller customers for billing only.
When customers have billing credentials, the billing data should display on the dashboard, see Display Azure billing data .