Loading...

Use Azure Automation to export Endpoint Analytics Proactive Remediation report to a CSV then upload on Sharepoint


In this post I will show how to use Azure Azure Automation to get device status from a specific Endpoint Analytics Proactive Remediation script then upload report as CSV to a Sharepoint/Teams


Context

- You have created a Remediation Script

- You want to get device status part

- You want to export it as CSV

- You want this CSV on Sharepoint/Teams

- You want a schedule way for this


The solution

We will proceed as below:

1. Create a Sharepoint app for the report

2. Create an Automation account

3. Create a Runbook

4. Add the script on the runbook

5. Schedule the runbook


The script

The script that will do below things:

- Connect to intune

- Get remediation report details

- Upload report to Sharepoint


Replace below values with your own:

$tenant: Your tenant name

$clientId: Your azure app id

$clientSecret: Your azure app secret

$Script_name: Name of the remediation script to export

$app_id: Your sharepoint app id

$App_Secret: Your sharepoint app secret

$Upload_Folder: Sharepoint folder

$Site_URL: Sharepoint URL


Get the script

Click on the below picture to get the script


Remediation part

In this example, my remediation script is the below one:

It's called: Detects no BIOS password devices

It will check if device has a BIOS password.

See the post about how to create this kind of remediation script.

So now we want to get the list of device and details.


Azure application part

Create the app

1. Log in to Azure

2. Go to App registrations

3. Click on New registration

4. Type a name and let by default

5. Click on Register

6. You now have access to your app info


Create a secret client

For authentication we will need a secret.

To create it, you will need to proceed as follows:

1. Click on Certificates & secrets


2. Click on New client secret


3. Enter a name

4. Choose Never

5. Click Add


6. Your secret client will be displayed

7. Copy it somewhere to reuse it


Add permissions

1. Go to your Azure application

2. Click on API permissions

3. Click Add a permission

4. Choose Microsoft Graph

5. Click on Application permissions

6. Navigate to DeviceManagementConfig

7. Check below permissions

8. Click on Add permissions

9. Click on Grant admin consent



Sharepoint part

The idea is to create a Sharepoint app to authenticate to Sharepoint.

This way you will be able to upload a file easily.

You can find in my post here, how to do that.


Azure Automation part

Purpose: In this part we will create a runbook meaning a script that will be executed each hour. 

This script will generate the remediation script report and upload it on Sharepoint.

Create the automation account

1. Go to Azure

2. Go to Automation accounts

3. We will create a new one, click on + New

4. Type a name like RemediationReport

5. Select your subscription

6. Select a Resource group

OR 

6. Click on Create new in resource group part

7. Select your location

8. Click on Create

9. Wait for the success notif

10. You have now your new automation account


Install modules

Purpose: In this part we will import the below modules in our Automation part:

- Microsoft.Graph.Intune

- pnp.PowerShell


Import Intune module

1. Go to your automation account

2. Go to Modules

3. Click on the Browse Gallery

4. Search Microsoft.Graph.Intune

5. Click on the appropriate module

6. Click on Import

7. Click on OK 

8. The import starts


Import sharepoint module

1. Go to your automation account

2. Go to Modules

3. Click on the Browse Gallery

4. Search pnp.powershell

5. Click on the appropriate module

6. Click on Import

7. Click on OK 

8. The import starts


Runbook part

Create the Runbook

1. Click on the automation previously created

2. Click on Runbooks

3. Click on Create a Runbook

4. Type a name like UploadRemediationReport

5. In Runbook type, select PowerShell

6. Click on Create


Test the runbook

1. Your runbook is empty

2. Add the code from the script

3. Click on Save 

4. Click on Test pane 

5. Click on Start

6. The job completed successfully

7. Now check your sharepoint

8. The CSV has been uploaded

9. See below how it looks like:



Publish the runbook

Purpose: Now we have tested our script, we will publish it and add a schedule.

1. Click on Edit

2. Click on Publish

3. Click on Yes

4. Click on Schedules

5. Click on Add a schedule

6. Click on Schedule

7. Click on Add a schedule

8. Type a name

9. Select the start date and Timezone

10. Select Recurring

11. We will set it to every 3 hour

12. Click on Create

13. Click on OK

slider 8308546724828796118

Publier un commentaire

Accueil item

Award

Endpoint Manager award

Mes articles en français

Author of Books

PowerShell GUI & WPF Group

PowerShell GUI & WPF Group

Join the FPSUGR

Join the FPSUGR

Stats