(For Admins) Power BI Admin กับการ Enable ตัว Audit Log

Narisorn Limpaswadpaisarn
EchoO365
Published in
4 min readMay 31, 2020

Content difficulty — Technical

Power BI Administrator เป็น role ที่มีส่วนสำคัญในการแบ่งเบาภาระของ Global Administrator ในการบริหารจัดการ Power BI ในระดับ tenant ขององค์กร ซึ่งจะสามารถดู Workspace ขององค์กร, ทำ classification, ทำ branding, ดู usage metrics และ รวมไปถึงการสร้างหรือจัดการตัว capacity ใน Power BI Premium โดย Power BI Administrator สามารถเข้ามาจัดการได้ที่ https://app.powerbi.com/admin-portal/

Power BI Admin portal
Tenant settings

Global Administrator สามารถ Assign สิทธิ์นี้ให้กับ user ได้ผ่าน Admin Center ซึ่งไปที่ https://admin.microsoft.com แล้วก็ไป Assign สิทธิ์ Power BI Administrator กับ user คนนั้นๆ

Power BI Admin — user assignment
User พอคลิก gear icon ก็จะสามารถเข้า Power BI Admin portal ได้

Power BI Administrator นั้นไม่สามารถดู Audit Log ที่เป็น Power BI Activities ได้ ซึ่ง Audit Log เป็น feature ที่สามารถดู Activity ต่างๆ ใน Microsoft 365 ของ tenant ว่าใครทำอะไรบ้าง หรือ Admin คนไหนได้ไป settings อะไร ย้อนหลังไป 90 วันสำหรับคนที่ใช้ Office 365 Plans ทั่วไป แต่สำหรับ user ที่ใช้ Plans ที่เป็น Office 365 E5, Microsoft 365 E5 Compliance หรือ add-on ตัว eDiscovery ตัว log จะเก็บได้ 1 ปี (เวลาจะเป็น UTC ธรรมดา)

ตัว Audit Log ตัวนี้จะเป็น Unified Audit Log ที่ดูได้ทั้ง Service อื่นๆด้วย อย่างเช่น Exchange Online หรือ SharePoint Online จึงทำให้ Power BI Admin ไม่สามารถดูได้ by default นอกจากจะดู Power BI Activities Log ผ่าน REST API หรือ PowerShell (เนื้อหาตรงนี้จะอยู่ในตอนท้าย)

Power BI Activities จะถูกบันทึกหลังจาก Action ของ user/admin ราวๆประมาณ 30 นาที สำหรับ (บาง Office 365 services จะใช้เวลา 24 ชม.) ซึ่ง tenant ในปัจจุบัน ตัว Audit Logs จะ turn on ตั้งแต่แรกอยู่แล้วเป็น default

ถ้ายังไม่ turn on สามารถใช้ PowerShell เพื่อ turn on ทั้ง tenant ได้โดย Set-AdminAuditLogConfig -UnifiedAuditLogIngestionEnabled $true หรือกดปุ่ม Turn on ที่หน้า Audit Log พอ turn on แล้วก็ต้องรอให้ระบบ set ตัว ประมาณไม่เกิน 48 ชม.

สิทธิในการดู Audit Log นั้นจะเป็นสิทธิของ Global Administrator หรือ Exchange Administrator ที่จะมีอำนาจในการดู ซึ่งพวกเขาสามารถดู Audit Logs ได้ที่ https://protection.office.com/unifiedauditlog หรือจากที่ https://compliance.microsoft.com/auditlogsearch

Global Admin หรือ Exchange Admin สามารถดู Audit Log ได้
ดูรายละเอียด Power BI Activities รวมถึงการ Export

เราสามารถ Assign สิทธิ์นี้ให้กับ Power BI Administrator ได้ โดย

  1. เพิ่ม role ให้เป็น Exchange Administrator หรือ Global Administrator
  2. เพิ่ม Permission โดยใช้ Role group ใน Exchange Online (แนะนำ)

เพื่อไม่ให้สิทธิ์มากเกินความจำเป็น เราสามารถให้สิทธิ์ scope เฉพาะการดู Audit Log แก่เหล่า Power BI Administrator ได้ สิทธิในการดู Audit Log นี้จริงๆแล้วจะ list อยู่ใน Exchange Online Admin Center (EAC)

ถ้าไปที่ https://admin.exchange.microsoft.com/#/adminRoles แล้วเข้าไปที่ Permissions ของ admin Roles ก็จะเห็นตัว Role groups พิเศษต่างๆของ Exchange Online ซึ่งจะเป็น Role-based permission

Admin Roles เฉพาะในฝั่ง Exchange ที่ไม่มีใน Microsoft 365 Admin Portal

ซึ่งในส่วนของ Audit Log จะอยู่ภายใต้ built-in Role group ที่ชื่อ Compliance Management และ Organization Management ซึ่งจะมี Assigned Roles 2 ส่วนคือ Audit Logs และ View-Only Audit Logs

role ของ Audit Logsจะมีใน Records Management role group ด้วย

Compliance Management role group มี permission ที่เราต้องการ
Compliance Management role group จริงๆแล้วมี permission ถึง 55 อย่าง

View-Only Audit Logs จะเป็น role ที่สามารถทำการ Search ตัว Audit Logs ได้ ส่วน Audit Logs จะเป็น role ที่สามารถการ Search และ Export ตัว Audit Logs การ Assign เราสามารถ Assign ทั้ง role group จากที่ built in ให้ Power BI Administrator ได้เลย

Add จาก built in role group ที่มีอยู่แล้ว (เช่น Compliance Management)

หรือจะ scope ให้แค่ความสามารถ roles เฉพาะ View-Only Audit Logs หรือ Audit Logs โดยที่เราสร้าง role group แบบ custom โดย new role group แล้วทำการ add role และ add member ที่เป็น Power BI Administrator หรือ คนที่ต้องการเข้าไป

สร้าง custom role group ใหม่
ตั้งชื่อ role group
ให้ permission เฉพาะ Audit Logs
Assign user ที่ต้องการ แล้ว next เพื่อ Review and finish
มี Role group ใหม่พร้อม assign user เรียบร้อย

เมื่อ add แล้วใช้เวลาซักพัก user ก็จะเข้าไป search ได้โดยไปที่ https://protection.office.com/unifiedauditlog

ตอนแรกยังไม่มี permission
ใช้เวลาไม่เกินครึ่งชั่วโมงก็เริ่มใช้งานได้

Sign in log

สามารถดูได้จาก Azure AD Portal ซึ่งย้อนหลังได้ 1 เดือนถ้ามี Azure AD Premium P1 license และ 7 วันถ้าเป็น Office 365 license ธรรมดา และสามารถไปเก็บ log ให้นานกว่านั้นผ่าน Azure Storage

เข้าได้โดย -https://aad.portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/SignIns

Role ที่สามารถเข้าได้ Global Admin, Security Admin, Security Reader, Global reader และ Report reader role

Sign in log

ใช้ PowerShell หรือ REST API ในการดู Power BI Activity Log

Power BI Administrator สามารถใช้ Tools อย่าง Power BI Admin API หรือ PowerShell ที่เป็น module ของ Power BI Admin management เพื่อดูหรือ filter ออกมาได้ โดย output จะออกมาเป็น JSON ถ้าใช้วิธีนี้ก็ไม่ได้จำเป็นต้องให้สิทธิของ View-Only Audit Logs หรือ Audit Logs

ในเรื่องความใช้งานง่ายแบบ user friendly นั้นตัว Unified จะง่ายกว่า

ตัวอย่าง REST API

GET https://api.powerbi.com/v1.0/myorg/admin/activityevents?startDateTime='2022-09-31T00:00:00'&endDateTime='2022-10-31T23:59:59'

ตัวอย่าง PowerShell

Login-PowerBI

$activities = Get-PowerBIActivityEvent `

-StartDateTime ‘2019–08–31T00:00:00’ `

-EndDateTime ‘2019–08–31T23:59:59’ | ConvertFrom-Json

$activities.Count

$activities[0]

--

--

Narisorn Limpaswadpaisarn
EchoO365

Office 365 and Modern Workplaces: Please follow my publication https://medium.com/echoo365 for Microsoft 365 & Power Platform Blog (In Thai)