Onboard an Azure Account
After InsightCloudSec is successfully installed, you're ready to start harvesting data from your Accounts, which requires configuring Microsoft Azure to "talk" with InsightCloudSec securely. As your inventory grows and your cloud accounts are fully visible, you can then begin to leverage the rest of InsightCloudSec, including Insights, Bots, Layered Context, and more.
This page and the functionality detailed here refer to the provider-specific Accounts capability available under Cloud > Cloud Accounts. If you are looking to onboard an Azure Organization instead, see Onboard an Azure Organization.
Opening the Cloud Account Onboarding Interface
Before you can begin the onboarding process, you'll need to navigate to the Cloud Account Onboarding interface, which provides a different experience depending on the type of user you are:
User | Description | Experience |
---|---|---|
First-time User | InsightCloudSec is freshly deployed and this will be the first time a Cloud Service Provider (CSP) has been onboarded. | Platform Users: Onboarding wizard launched from Platform Home by clicking the InsightCloudSec tile. InsightCloudSec Only Users: The onboarding wizard appears automatically after logging in using your unique InsightCloudSec URL. |
Returning User | InsightCloudSec has one or more CSPs already onboarded and you would like to add a new account. | Launched from within InsightCloudSec. Not a wizard. |
Admin User | You can login to the cloud provider and have the appropriate access to grant InsightCloudSec access to your account(s). | As an admin, you will need to complete some specific tasks within your Cloud Service Provider's (CSP) console to generate details needed for onboarding that either you or a non-admin user can input to InsightCloudSec. |
Non-Admin User | You can interact with InsightCloudSec and would like to onboard an account(s) but do not have the appropriate CSP access to grant InsightCloudSec access to your account(s). | You will need to copy and send a message to the admin asking them to complete specific tasks and provide you with the information you need to complete onboarding. |
Onboarding an Azure Account
A couple methods for onboarding your Azure Accounts (subscriptions in Azure's parlance) are available depending on whether you're a non-admin or admin user.
Resuming cloud onboarding to InsightCloudSec
If you close the interface before completing Account onboarding, you can resume onboarding from the page you were on last.
Non-Admin User Instructions
Ask an admin for required information
As a non-admin user, you need to copy and send a message to the admin asking them to complete specific tasks and provide you with the information needed to complete onboarding.
First-time Users
- Login to InsightCloudSec using one of the methods below:
- In the Insight Platform, click InsightCloudSec to launch the onboarding wizard.
- Open a browser window to your unique InsightCloudSec URL and login. The onboarding wizard will appear automatically.
- On the Welcome screen, review key features and capabilities, then click Onboard a Cloud Account.
- On the Cloud Service Providers screen, select Microsoft Azure.
- Select No - Help me identify the details needed, then click Next.
- Click the Copy button in the Microsoft Azure Admin Instructions text box and share them with the admin.
Returning Users
- Login to InsightCloudSec using one of the methods below:
- In the Insight Platform, click the InsightCloudSec tile.
- Open a browser window to your unique InsightCloudSec URL and login.
- Navigate to Cloud > Cloud Accounts in the left-hand navigation menu.
- Click the + Add Cloud button in the top right corner.
- Click the Microsoft Azure button.
- Click Don't have admin access? in the bottom right corner of the window.
- Click the Copy button in the Microsoft Azure Admin Instructions text box and share them with the admin.
Connect the Account
When your admin has completed their steps and provided the information to you, you can now connect the Account.
First-time Users
- Return to InsightCloudSec using one of the methods below:
- In the Insight Platform, click InsightCloudSec to launch the onboarding wizard.
- Open a browser window to your unique InsightCloudSec URL and login. The onboarding wizard will appear automatically.
- The wizard should automatically return you to the Microsoft Azure Admin Instructions page.
- Enter the following information (provided by your admin):
- Select the Azure partition (Commercial, Government, China) in which the Account is located.
- Copy/paste the Nickname for the Account. This is a unique value that will be used to search Accounts across the system based on an identifiable label.
- Copy/paste the Application (Client) ID and Directory (Tenant) ID.
- Select the authentication type.
- If you chose API/Secret, copy/paste the Secret Key Value.
- If you chose Client Certificate, copy/paste the PEM Certificate and Certificate Thumbprint.
- Copy/paste the Subscription ID.
- Click Connect Account.
Returning Users
- Login to InsightCloudSec using one of the methods below:
- In the Insight Platform, click the InsightCloudSec tile.
- Open a browser window to your unique InsightCloudSec URL and login.
- Navigate to Cloud > Cloud Accounts in the left-hand navigation menu.
- Click the + Add Cloud button in the top right-hand corner.
- Click the Microsoft Azure button.
- Click Don't have admin access? in the bottom right-hand corner of the window.
- Enter the following information (provided by your admin):
- Select the Azure partition (Commercial, Government, China) in which the Account is located.
- Copy/paste the Nickname for the Account. This is a unique value that will be used to search Accounts across the system based on an identifiable label.
- Copy/paste the Application (Client) ID and Directory (Tenant) ID.
- Select the authentication type.
- If you chose API/Secret, copy/paste the Secret Key Value.
- If you chose Client Certificate, copy/paste the PEM Certificate and Certificate Thumbprint.
- Copy/paste the Subscription ID.
- Click Connect Account.
Admin User Instructions
As an admin, you must prepare your Account(s) for the connection with InsightCloudSec by creating a new application registration & creating and assigning custom roles within Azure. For more information on the custom roles that InsightCloudSec provides, review Azure Overview & Support.
Providing details to a non-admin user?
If you are providing details to a non-admin user to onboard the Account, ensure that the credentials you share with the non-admin user will include the appropriate access and enable them to connect your Azure subscription with InsightCloudSec successfully. We recommend using a secure file sharing system to provide credentials to your non-admin user.
Azure Admin Onboarding Prerequisites
- Domain Admin permissions within InsightCloudSec
- Global Admin-level access to the desired Azure subscription. For instructions on attaining Global Admin access, refer to Azure's "Elevate access" documentation
- Existing familiarity/configuration for Azure subscriptions
Additional Azure-related InsightCloudSec Features
InsightCloudSec offers some features that require additional permissions/roles within Azure. It is easiest to perform this configuration while onboarding an account/organization. Review the links below to determine which features you'd like to use and we'll provide a reminder to select the relevant options later.
Prepare Azure for Onboarding
To onboard a single subscription for Azure you need to complete one of the following set of instructions:
Manual Onboarding using the Azure console
Step 1: Create a new Microsoft Entra ID Application Registration
The Azure subscription that contains data you want to harvest for InsightCloudSec will need an Application Registration associated with it. By creating a specific InsightCloudSec app, you are then able to monitor all actions taken by InsightCloudSec. This facilitates troubleshooting, helping you understand what InsightCloudSec is doing versus what other apps are doing.
Multiple Browser Tabs/Windows Recommended
InsightCloudSec onboarding can proceed much more quickly and easily if you have both your InsightCloudSec instance and the Azure console open side-by-side in your preferred browser's windows/tabs.
- Login to your InsightCloudSec instance and open the Cloud Onboarding interface.
- First-time Users:
- On the Welcome screen, review key features and capabilities, then click Onboard a Cloud Account.
- On the Cloud Service Providers screen, select Microsoft Azure.
- Select Yes - I have permissions to create roles, then click Next.
- For your connection journey, click Manual Steps, then click Next.
- Returning Users:
- Navigate to Cloud > Cloud Accounts in the left navigation menu.
- Click the + Add Cloud button in the top right corner.
- Click the Microsoft Azure button.
- For your connection journey, click Manual Steps.
- First-time Users:
- In a separate browser tab or window, login as an Admin to the Azure Console for the subscription you want to harvest.
In the Azure Console:
- Add a New Application Registration.
- Navigate to the Microsoft Entra ID home page.
- Click App registrations, located under the Manage menu.
- Click New registration.
- Describe the New App Registration.
- Enter a Name to denote that this app is used for InsightCloudSec, e.g.,
InsightCloudSec Azure Application
. - Select the supported account type. We recommend using the Single Tenant option.
- Optionally, enter a Redirect URI using the specified URL format. This may be required later for authentication.
- Click Register to create the app registration.
- Enter a Name to denote that this app is used for InsightCloudSec, e.g.,
- Once you have registered your app, a preview panel opens. This panel shows an overview of your newly created app and displays both the Application (Client) ID and the Directory (Tenant) ID. Copy both of these IDs to a safe location; you will need to use these values later.
- From the new application's Overview page, click Certificates & secrets from the Manage menu on the left side.
- Create and save a certificate or secret for this Application.
- To use a Certificate:
- Generate a certificate (public key) locally and save it to a secure location.
- From the Certificates & secrets page in Azure, click the Certificates tab.
- Click Upload certificate.
- Click Select a file and navigate to the certificate on your computer.
- Click Open.
- Optionally, provide a description.
- Click Add. Your certificate's thumbprint will be displayed.
- Copy the certificate value and thumbprint to a secure location; you will need to use this later.
- To use a Client secret:
- From the Certificates & secrets page in Azure, click the Client secrets tab.
- Click New client secret.
- Give your client secret a description.
- Set an expiration period for your secret.
- Click Add. Your new client secret's values will be displayed.
- Copy the generated client secret key value to a safe location; you will need to use this value later. This is the only opportunity you have to copy this secret key value. If you leave this page without copying the secret key value, you will not be able to access the value and you'll need to delete the key and create another one.
- To use a Certificate:
- Set up permissions for this App Registration.
- From the application's Overview page, click API permissions from the Manage menu on the left side.
- Click Add a permission.
- Click Microsoft Graph.
- Select Application Permissions.
- Search for
Directory.Read.All
under the Directory section.- The
Directory.Read.All
permission contains theApplication.Read.All
permission, which is required to harvest the Azure Application Credentials resource. Review the Resource Matrix for more information and contact the support team through the Customer Support Portal for any questions or assistance.
- The
- Check the box next to the permission and click Add permissions.
- Search for
AuditLog.Read.All
under the "AuditLog" section. - Check the box next to the permission and click Add permissions.
- Search for
- Click Grant admin consent for Default Directory, then confirm the selection.
In the InsightCloudSec Cloud Onboarding interface:
- For 1. Authentication:
- Select the Azure partition (Commercial, Government, China) in which the subscription is located.
- Copy/paste the Application (Client) ID and the Directory (Tenant) ID values.
- Select the authentication type you configured within the Azure console.
- If you chose API/Secret, copy/paste the Secret Key Value.
- If you chose Client Certificate, copy/paste the PEM Certificate and Certificate Thumbprint.
- Click Next.
Step 2: Create custom role(s)
To ensure that the new InsightCloudSec-associated Application Registration you created in the previous section is securely and appropriately accessing your Azure account data (and providing resource visibility), you'll need to create the appropriate IAM role; InsightCloudSec offers a few.
Using a standard role?
If you are planning on using a standard Azure role (e.g., not one of the InsightCloudSec-provided custom roles), skip to Step 3. If you wish to enable any of the additional Azure-related InsightCloudSec features, you should cross-reference the features' requirements with the standard roles to determine any permissions that will need to be added manually.
Adding a Custom Role for Resource Visibility
In the Azure Console:
Navigate to Subscriptions and select the subscription you want to onboard.
On the Overview page, copy the Subscription ID. You will need this ID for connecting the subscription.
From the menu panel on the left, select Access control (IAM).
From the Access control (IAM) page, click Add > Add custom role.
Provide the Basics.
- Provide a custom role name.
- Optionally, provide a description for the role.
- Select Start from scratch.
Update the generated JSON file for the correct permissions.
- Click the JSON tab.
- Click Edit.
- Download one of the roles discussed on the Azure Overview & Support page. The roles are also available inside the Cloud Onboarding interface in InsightCloudSec.
- Return to the Azure Console and replace the JSON object with the one you just copied.
- Update the placeholder Subscription ID for the ID associated with the subscription you're onboarding to InsightCloudSec.
- Click Save.
Additional Azure-related InsightCloudSec Features
At this point in the process, it would be easiest to update the newly-created harvesting role with permissions for any additional Azure-related InsightCloudSec features.
Click Review + create.
- The JSON will be validated. If successful, verify everything looks correct.
- Click Create.
In the InsightCloudSec Cloud Onboarding interface:
- For 2. Roles:
- Select Subscription.
- Copy/paste the Subscription ID.
- Click Next.
Step 3: Assign the role(s)
Standard and custom roles alike must be assigned to a Subscription so it can be harvested properly and securely. You'll need to add the IAM role (e.g., Reader, Reader Plus, etc.) assignment.
Assigning the IAM Role
In the Azure Console:
- From the desired subscription's menu panel on the left, select Access control (IAM).
- From the Access control (IAM) panel, click Add > Add role assignment.
- Select the role you wish to assign, then click Next.
- Add the Application Registration as a member.
- Leave the Assign access to field as the default value (
User, group, or service principal
). - Next to Members, click + Select members.
- In the Select panel, begin typing the name of the application you created earlier. Select that application once it appears, then click Select.
- Click Review + assign to add the role.
- Leave the Assign access to field as the default value (
Manual Onboarding instructions complete!
After completing these steps, you have completed the manual onboarding instructions for Azure. Jump to the Connect the Account in InsightCloudSec instructions.
Automated Onboarding using Azure Cloud Shell
The Azure subscription that contains data you want to harvest for InsightCloudSec will need an Application Registration associated with it. By creating a specific InsightCloudSec app, you are then able to monitor all actions taken by InsightCloudSec. This facilitates troubleshooting, helping you understand what InsightCloudSec is doing versus what other apps are doing. All of this can be completed in an automated fashion using the InsightCloudSec Azure Onboarding script in the Azure Cloud Shell.
Multiple Browser Tabs/Windows Recommended
InsightCloudSec onboarding can proceed much more quickly and easily if you have both your InsightCloudSec instance and the Azure console open side-by-side in your preferred browser's windows/tabs.
- Login to your InsightCloudSec instance and open the Cloud Onboarding interface.
- First-time Users:
- On the Welcome screen, review key features and capabilities, then click Onboard a Cloud Account.
- On the Cloud Service Providers screen, select Microsoft Azure.
- Select Yes - I have permissions to create roles, then click Next.
- For your connection journey, click Microsoft Azure Script, then click Next.
- Returning Users:
- Navigate to Cloud > Cloud Accounts in the left navigation menu.
- Click the + Add Cloud button in the top right corner.
- Click the Microsoft Azure button.
- For your connection journey, click Script.
- First-time Users:
- In a separate browser tab or window, login as an Admin to the Azure Console for the primary subscription you want to harvest.
In the InsightCloudSec Cloud Onboarding interface:
- Select the Azure partition (Commercial, Government, China) in which the subscription is located.
- Select Subscription.
- Select the desired authentication type.
- Click Generate & Download Script.
In the Azure Console:
In the top bar, click the Cloud Shell icon to open the Cloud Shell. If this is your first time using the Cloud Shell, you'll be prompted to select the type of shell and storage within a subscription to persist files between sessions. Review the Azure Documentation for more information.
Click the Upload/Download Files icon, then click Upload and select the onboarding script from its downloaded location. The file will be uploaded to
/home/<username>
by default.Run the script (
python onboard.py
) and follow the prompts to create everything needed to onboard the Account. If you uploaded the onboarding script to somewhere other than the default, you'll need to include the directory location with the command.- Provide an Application Registration name (or press Enter to use the default).
- Provide the subscription ID for the Account you wish to onboard (or press Enter to use the current Subscription).
- Provide a number corresponding to the role you wish to use for harvesting (or press Enter to use the default). Review Azure Overview & Support for more information.
- The configuration is complete. The necessary values are displayed.
Additional Azure-related InsightCloudSec Features
At this point in the process, it would be easiest to update the newly-created harvesting role with permissions for any additional Azure-related InsightCloudSec features.
Copy the necessary configuration information (Tenant ID, Subscription ID, Application Registration name, Application Registration ID, Application Registration password a.k.a. Secret Key Value) to a secure location.
In the InsightCloudSec Cloud Onboarding interface:
- Copy/paste the Application (Client) ID and the Directory (Tenant) ID values.
- Copy/paste the relevant authentication value(s).
- If you chose API/Secret, copy/paste the Secret Key Value.
- If you chose Client Certificate, copy/paste the PEM Certificate and Certificate Thumbprint.
- Copy/paste the Subscription ID.
Cloud Shell Onboarding instructions complete!
After completing these steps, you have completed the automated onboarding instructions for Azure Cloud Shell. Jump to the Connect the Account in InsightCloudSec instructions.
Automated Onboarding using Azure CLI
The Azure subscription that contains data you want to harvest for InsightCloudSec will need an Application Registration associated with it. By creating a specific InsightCloudSec app, you are then able to monitor all actions taken by InsightCloudSec. This facilitates troubleshooting, helping you understand what InsightCloudSec is doing versus what other apps are doing. All of this can be completed in an automated fashion using the InsightCloudSec Azure Onboarding script in the Azure CLI.
Prerequisites
- Local terminal access
- Python installed
- Azure CLI installed
These instructions and prerequisites have only been tested on a Unix-based system.
- Login to your InsightCloudSec instance and open the Cloud Onboarding interface.
- First-time Users:
- On the Welcome screen, review key features and capabilities, then click Onboard a Cloud Account.
- On the Cloud Service Providers screen, select Microsoft Azure.
- Select Yes - I have permissions to create roles, then click Next.
- For your connection journey, click Microsoft Azure Script, then click Next.
- Returning Users:
- Navigate to Cloud > Cloud Accounts in the left navigation menu.
- Click the + Add Cloud button in the top right corner.
- Click the Microsoft Azure button.
- For your connection journey, click Script.
- First-time Users:
- In a separate browser tab or window, login as an Admin to the Azure Console for the primary subscription you want to harvest.
In the InsightCloudSec Cloud Onboarding interface:
- Select the Azure partition (Commercial, Government, China) in which the subscription is located.
- Select Subscription.
- Select the desired authentication type.
- Click Generate & Download Script.
In a local terminal window:
Login to the Azure CLI:
az login
Run the script (
python onboard.py
) and follow the prompts to create everything needed to onboard the Account. If you're not currently in the location of the onboarding script, you'll need to include the directory location with the command.- Provide an Application Registration name (or press Enter to use the default).
- Provide the subscription ID for the Account you wish to onboard (or press Enter to use the current Subscription).
- Provide a number corresponding to the role you wish to use for harvesting (or press Enter to use the default). Review Azure Overview & Support for more information.
- The configuration is complete. The necessary values are displayed.
Additional Azure-related InsightCloudSec Features
At this point in the process, it would be easiest to update the newly-created harvesting role with permissions for any additional Azure-related InsightCloudSec features.
Copy the necessary configuration information (Tenant ID, Subscription ID, Application Registration name, Application Registration ID, Application Registration password a.k.a. Secret Key Value) to a secure location.
In the InsightCloudSec Cloud Onboarding interface:
- Copy/paste the Application (Client) ID and the Directory (Tenant) ID values.
- Copy/paste the relevant authentication value(s).
- If you chose API/Secret, copy/paste the Secret Key Value.
- If you chose Client Certificate, copy/paste the PEM Certificate and Certificate Thumbprint.
- Copy/paste the Subscription ID.
Azure CLI Onboarding instructions complete!
After completing these steps, you have completed the automated onboarding instructions for Azure CLI. Jump to the Connect the Account in InsightCloudSec instructions.
Connect the Account in InsightCloudSec
The Azure onboarding process is nearly complete; all that remains is to setup an account nickname in InsightCloudSec and verify the account connection.
In the InsightCloudSec Cloud Onboarding interface:
- Provide the Nickname for the Account. This is a unique value that will be used to search Accounts across the system based on an identifiable label.
- Click Connect Account.
Success! You onboarded an Account
Congratulations on successfully onboarding an Azure Account! InsightCloudSec will now detect the following:
- If there are any missing permissions that could cause impaired visibility into your Account
- For information about modifying an existing onboarded account, check out the Cloud Account Setup & Management page.