Microsoft Entra Privileged Identity Management: kiểm soát tài khoản admin với just-in-time access

Chào các bạn!

Ở bài 1 mình đã nói về tài khoản break-glass và tầm quan trọng của việc bảo vệ admin accounts. Bài 2 thì đi sâu vào Conditional Access – yêu cầu phishing-resistant MFA và session timeout 4 giờ cho admin.

Nhưng vẫn còn một vấn đề chưa giải quyết: tài khoản admin vẫn “always-on” – tức là bất cứ lúc nào đăng nhập vào, quyền Global Admin vẫn đang chạy ngầm.

Hãy nghĩ thế này: nếu một nhân viên IT chỉ cần quyền admin để làm một việc mỗi tuần một lần, tại sao họ phải mang quyền đó 24/7? Trong 167 giờ còn lại của tuần, quyền đó là rủi ro thuần túy – nếu tài khoản bị compromise trong lúc không làm việc, attacker có đủ thời gian để làm bất cứ thứ gì.

Privileged Identity Management (PIM) giải quyết vấn đề này bằng cách chuyển từ “always-on admin” sang just-in-time access – quyền chỉ tồn tại khi cần, tự động thu hồi sau khi hết thời gian.

PIM hoạt động như thế nào

Trước khi vào lab, cần hiểu 2 khái niệm cốt lõi:

Active assignment – cách hoạt động truyền thống. User được gán role, role tồn tại liên tục, không cần làm gì thêm để có quyền.

Eligible assignment – cách PIM hoạt động. User được đánh dấu là “đủ điều kiện” để có role, nhưng chưa có quyền ngay. Khi cần, user phải chủ động activate role – điền lý do, thực hiện MFA, chờ approval nếu cần – và role chỉ tồn tại trong khoảng thời gian giới hạn (ví dụ: 1-8 giờ).

Trước PIM:   [User] ──── Global Admin ───────────────────────────── (mãi mãi)

Sau PIM:     [User] ── Eligible ──► [Activate: MFA + lý do] ──► Global Admin (8 giờ) ──► hết hạn

Ngoài ra PIM còn cung cấp:

  • Approval workflow – một người khác phải phê duyệt trước khi role được activate
  • Access review – định kỳ hỏi manager “người này có còn cần role này không?”
  • Audit log – ai activate role gì, lúc nào, lý do gì
  • Alerts – cảnh báo khi có bất thường (ví dụ: có người được gán Global Admin mà không qua PIM)

Điều kiện cần

Yêu cầuChi tiết
LicenseMicrosoft Entra ID P2 (có trong M365 E5, EMS E5, hoặc mua add-on)
Role để cấu hình PIMPrivileged Role Administrator hoặc Global Administrator
Tài khoản break-glassPhải có trước — xem bài 1

Lưu ý quan trọng: Tài khoản break-glass không nên đưa vào PIM. Để nguyên là Active assignment — đây là tài khoản dùng trong tình huống khẩn cấp khi mọi thứ khác đều hỏng.

Bước 1: Khởi động PIM lần đầu

  1. Vào Entra admin center → tìm Privileged Identity Management trong menu trái (hoặc search)
  2. Lần đầu vào sẽ thấy trang overview với hướng dẫn onboard
  3. Bấm Discover roles để PIM quét toàn bộ role assignments hiện tại trong tenant
  1. PIM sẽ hiển thị danh sách tất cả user đang có privileged roles – đây thường là lúc bạn nhận ra có nhiều người đang có quyền hơn cần thiết
  1. Bấm Manage in PIM để đưa toàn bộ vào PIM quản lý

Bước 2: Cấu hình role settings cho Global Administrator

Đây là bước quan trọng nhất – định nghĩa “luật chơi” cho role nhạy cảm nhất.

  1. Trong PIM → Microsoft Entra roles → Roles → tìm và chọn Global Administrator
  2. Bấm Settings (góc trên phải)

Cấu hình từng phần:

Activation settings

Cài đặtGiá trị khuyên dùngLý do
Activation maximum duration4 hoursĐủ để hoàn thành một task, không dư thừa
On activation, requireAzure MFAXác thực lại khi activate, không chỉ khi login
Require justification on activationYesPhải điền lý do — tạo audit trail
Require ticket informationYes (tùy)Nếu có ticketing system (ServiceNow, Jira)
Require approval to activateYesCần người khác approve — áp dụng cho Global Admin
Approvers[Privileged Role Administrator]

Assignment settings

Cài đặtGiá trị khuyên dùng
Allow permanent eligible assignmentNo
Expire eligible assignments after180 days
Allow permanent active assignmentNo
Expire active assignments after8 hours
Require MFA on active assignmentYes

Notification settings

Bật notification cho:

  • Role activation alerts → gửi email cho admin khi có người activate Global Admin
  • Role assignment alerts → gửi email khi có người được gán role này

[screenshot: Notification settings, email notifications đang được bật]

  1. Bấm Update để lưu

Bước 3: Cấu hình role settings cho các role khác

Làm tương tự bước 2 cho các role nhạy cảm khác, với mức độ chặt chẽ giảm dần theo độ nhạy cảm:

RoleMax durationRequire approvalJustification
Global Administrator4 giờYesYes
Security Administrator8 giờYesYes
Exchange Administrator8 giờNoYes
SharePoint Administrator8 giờNoYes
User Administrator8 giờNoYes
Helpdesk Administrator4 giờNoYes
Billing Administrator4 giờYesYes

Nguyên tắc: Role càng ảnh hưởng rộng (toàn tenant) thì duration càng ngắn và approval càng chặt. Role chỉ ảnh hưởng một service thì có thể không cần approval nhưng vẫn cần justification.

Bước 4: Chuyển admin accounts từ Active sang Eligible

Đây là bước “đau” nhất – nhưng cần thiết nhất.

  1. Trong PIM → Microsoft Entra roles → Roles → Global Administrator
  2. Tab Assignments → xem danh sách Active assignments
  3. Với từng user (trừ break-glass account):
    • Bấm vào user → Update
    • Đổi Assignment type từ Active sang Eligible
    • End time: đặt 180 ngày (sẽ review sau)
    • Bấm Save
  1. Sau khi chuyển xong, tab Active assignments chỉ còn break-glass account. Tab Eligible assignments sẽ có danh sách các admin thực sự.

Từ thực tế: Nên thông báo cho các admin biết trước khi làm bước này. Lần đầu họ thấy mình mất quyền sẽ khá bỡ ngỡ. Gửi email hướng dẫn cách activate role trước khi thực hiện.

Bước 5: Luồng activate role – trải nghiệm của admin

Đây là phần bạn cần demo trực tiếp trên tenant để chụp screenshot. Mình mô tả đầy đủ để bạn biết sẽ thấy gì.

Khi admin cần dùng quyền:

  1. Đăng nhập vào myaccount.microsoft.com hoặc vào thẳng Entra admin center
  2. Vào PIM → My roles → Microsoft Entra roles
  3. Tab Eligible assignments sẽ hiển thị các role đủ điều kiện activate
  4. Bấm Activate bên cạnh role cần dùng
  1. Điền thông tin activate:
    • Duration: chọn số giờ cần (tối đa theo settings đã cấu hình)
    • Reason: điền lý do cụ thể (ví dụ: “Tạo user mới cho phòng kế toán theo ticket #1234”)
    • Thực hiện MFA nếu được yêu cầu
  1. Nếu role cần approval:
    • Hệ thống gửi request đến approver
    • Admin chờ – màn hình hiển thị “Pending approval”
    • Approver nhận email, vào PIM để approve hoặc deny

  1. Sau khi được approve (hoặc approve tự động nếu không cần approval):
    • Role chuyển sang tab Active assignments
    • Admin có thể làm công việc cần làm
    • Sau khi hết thời gian, role tự động bị thu hồi

Bước 6: Thiết lập approval workflow chi tiết

Nếu muốn cấu hình approval phức tạp hơn (ví dụ: cần 2 người approve, hoặc có backup approver):

  1. Trong role settings → Activation → Require approval
  2. Select approvers → thêm nhiều người
  3. Chọn Require multiple approvers nếu cần ít nhất 2 người approve

[screenshot: cấu hình multiple approvers cho Global Admin role]

Trải nghiệm của approver:

Khi có request activate, approver nhận email với link trực tiếp. Vào PIM → Approve requests → xem chi tiết request:

  • Ai đang request
  • Role nào
  • Duration bao lâu
  • Lý do gì

Approver có thể approve hoặc deny kèm comment.

Bước 7: Tạo access review định kỳ

Access review tự động hỏi manager hoặc chính user: “Người này có còn cần role này không?” Nếu không ai xác nhận, role tự động bị thu hồi.

  1. Trong PIM → Microsoft Entra roles → Access reviews → + New
  2. Cấu hình:
Cài đặtGiá trị khuyên dùng
Review nameQuarterly Review - Privileged Roles -[năm]
Start dateNgày đầu quý tiếp theo
FrequencyQuarterly
Duration14 days
RolesGlobal Administrator, Security Administrator, Exchange Administrator
ReviewersManager of record
Upon completionAuto apply — Remove access if not reviewed
  1. Bấm Start

Sau khi access review kết thúc, nếu manager không xác nhận thì role eligible tự động bị thu hồi. Không cần admin nhớ review thủ công hàng quý.

Bước 8: Xem PIM alerts

PIM tự động phát hiện các dấu hiệu bất thường và tạo alerts. Vào PIM → Alerts để xem.

[screenshot: trang PIM Alerts, danh sách alerts với severity]

Một số alerts phổ biến cần chú ý:

AlertÝ nghĩaHành động
Roles are being activated too frequentlyAi đó activate role nhiều lần/ngày — có thể đang dùng sai cách hoặc bị compromiseĐiều tra
Administrators aren’t using their privileged rolesRole eligible nhưng chưa bao giờ được activate — có thể không cần nữaThu hồi
Roles don’t require MFA for activationRole chưa được cấu hình require MFAVào settings sửa lại
Global admin role is too largeQuá nhiều Global AdminGiảm xuống, dùng role ít quyền hơn

Bước 9: Xem audit log

Mọi hành động trong PIM đều được ghi lại. Đây là bằng chứng quan trọng khi có sự cố hoặc audit.

  1. Vào PIM → Resource audit (cho Azure resources) hoặc Directory audit (cho Entra roles)
  2. Filter theo time range, role, hoặc user

Mỗi entry bao gồm:

  • Timestamp
  • Actor (ai thực hiện)
  • Action (activate, approve, deny, assignment changed…)
  • Target (role nào, user nào)
  • Justification (lý do đã điền khi activate)

Tổng kết những gì đã làm

Sau bài này, tenant của bạn đã có:

  • Không còn “always-on” Global Admin – tất cả admin chỉ có quyền khi chủ động activate
  • Audit trail đầy đủ – biết chính xác ai dùng quyền gì, lúc nào, lý do gì
  • Approval workflow cho role nhạy cảm nhất – 2 người biết mỗi khi Global Admin được activate
  • Access review hàng quý – tự động dọn dẹp role không còn cần thiết
  • Alerts phát hiện bất thường trong việc sử dụng privileged roles

Cái bẫy thường gặp khi triển khai PIM

Bẫy 1: Cấu hình approval cho tất cả role Không nên. Role như Helpdesk Administrator hay Password Administrator activate lúc 2 giờ sáng khi có sự cố – nếu cần approval sẽ bị block. Chỉ require approval cho Global Admin và các role thực sự nhạy cảm.

Bẫy 2: Đặt max duration quá ngắn 2 giờ cho Global Admin nghe có vẻ chặt, nhưng nếu admin đang làm một task dài và role hết hạn giữa chừng thì phải activate lại, rất phiền. 4-8 giờ là hợp lý cho hầu hết tình huống.

Bẫy 3: Quên notify admin trước khi chuyển sang Eligible Nếu admin đang làm việc mà đột ngột mất quyền (vì bạn vừa chuyển từ Active sang Eligible) – rất dễ gây hiểu lầm và mất thời gian xử lý. Thông báo trước ít nhất 1 ngày.

Bẫy 4: Không test luồng activate trước khi rollout Trước khi áp dụng cho toàn bộ admin team, hãy test với 1-2 người, đi qua toàn bộ luồng activate → approve → làm việc → hết hạn. Đảm bảo approver biết cách approve và nhận được email notification.

Tài liệu tham khảo


Bài viết có gì chưa rõ hoặc bạn gặp lỗi ở bước nào, cứ để lại comment bên dưới – mình sẽ cập nhật bài.

Long Trần | khongkho.com