Yêu cầu trước
- Một subscription Azure với quyền Owner hoặc User Access Administrator.
- Quyền tạo app registration trong Microsoft Entra ID.
- Đã đăng ký xác thực đa yếu tố cho tài khoản. Security defaults chặn việc đăng ký ứng dụng nếu chưa có.
Reader cộng Cost Management Reader là đủ cho mọi agent chỉ đọc. Chỉ thêm role ghi khi bạn muốn agent thay đổi tài nguyên Azure.
Thiết lập
- Azure CLI
- Azure portal
1
Chọn subscription
2
Tạo service principal
password chỉ hiển thị một lần.3
Thêm quyền đọc chi phí
4
Thêm kết nối trong CloudThinker
Vào Connections → Azure và nhập
appId vào APP_ID, password vào CLIENT_SECRET, tenant vào TENANT_ID. Chọn AZURE_DEFAULT_REGION, rồi nhấn Connect.Trạng thái thành công: kết nối hiển thị trạng thái Connected.Thanh toán theo Microsoft Customer Agreement
Subscription pay-as-you-go mua trực tuyến dùng Microsoft Customer Agreement (MCA). Cost Management trả vềGiven subscription doesn't have valid WebDirect/AIRS offer type cho subscription MCA, nên Optimize đọc chi phí ở scope billing profile.
Cấp quyền cho service principal ở scope đó: vào Cost Management + Billing → billing account của bạn → Billing profiles → profile của bạn → Access control (IAM) → Add, rồi gán Billing profile reader cho app registration. Role assignment ở subscription không bao gồm scope thanh toán.
Chi tiết kết nối
Subscription không phải là một trường của kết nối. CloudThinker tự phát hiện mọi subscription mà service principal đọc được.
Quyền cần thiết
Chỉ Reader thì không có dữ liệu chi phí. Reader cấp
*/read, còn truy vấn Cost Management là một POST action không khớp với */read.
Khả năng của agent
Sau khi kết nối, các agent có thể phân tích và tối ưu tài nguyên Azure của bạn.Kiểm tra kết nối
Prompt ví dụ
Khắc phục sự cố
Đăng nhập bị chặn bởi security defaults
Đăng nhập bị chặn bởi security defaults
az login hoặc portal trả về AADSTS530035: Access has been blocked by security defaults. Security defaults yêu cầu xác thực đa yếu tố trước khi bạn đăng ký ứng dụng. Đăng ký một phương thức tại aka.ms/mfasetup rồi đăng nhập lại. Cờ --use-device-code và --allow-no-subscriptions không vượt qua được điều này.Xác thực thất bại
Xác thực thất bại
Kiểm tra APP_ID, CLIENT_SECRET và TENANT_ID. Xác nhận secret chưa hết hạn và app registration nằm trong tenant bạn đã nhập. Kiểm tra không có chính sách conditional access nào chặn service principal đăng nhập.
Client secret hết hạn
Client secret hết hạn
Chạy
az ad sp credential reset --id <appId>, hoặc vào Microsoft Entra ID → App registrations → ứng dụng của bạn → Certificates & secrets để tạo secret mới. Cập nhật CLIENT_SECRET trong kết nối.Optimize không có dữ liệu chi phí
Optimize không có dữ liệu chi phí
Optimize báo Azure Cost Management is not readable. Gán Cost Management Reader trên subscription. Nếu subscription dùng Microsoft Customer Agreement, gán thêm Billing profile reader trên billing profile. Role assignment cần vài phút để lan truyền.
Cost Management trả về 429
Cost Management trả về 429
Subscription mới bị Cost Management giới hạn tần suất rất chặt, và truy vấn trả về
429 Too many requests. Đây không phải lỗi cấu hình. Chờ vài phút rồi tải lại Optimize.Thiếu tài nguyên
Thiếu tài nguyên
Kiểm tra role Reader đã được gán trên mọi subscription bạn muốn thấy. Tài nguyên trong subscription mà service principal không đọc được sẽ không xuất hiện.
Bảo mật
- Quyền tối thiểu — chỉ cấp các quyền mà agent cần cho trường hợp sử dụng của bạn; bắt đầu với quyền chỉ đọc và mở rộng sau.
- Chỉ đọc theo mặc định — sử dụng thông tin xác thực chỉ đọc trừ khi bạn muốn agent thực hiện thay đổi qua kết nối này.
- Xoay vòng thông tin xác thực — xoay vòng khóa và token theo lịch trình thông thường của bạn; CloudThinker sẽ lấy giá trị mới khi bạn cập nhật kết nối.
- Thu hồi khi bàn giao — xóa thông tin xác thực tại nhà cung cấp khi bạn xóa một kết nối hoặc khi đồng nghiệp rời nhóm.
- Đặt thời hạn secret — luôn đặt thời hạn cho client secret và xoay vòng trước khi hết hạn.
- Giới hạn scope của role — gán Reader và Cost Management Reader trên các subscription CloudThinker cần, không mặc định gán ở cấp management group.
Liên quan
Kết nối AWS
Kết nối Amazon Web Services
Agent Oliver
Agent tập trung vào bảo mật cho tuân thủ Azure