Chuyển đến nội dung chính
Kết nối các tài khoản AWS của bạn để cho phép các agent CloudThinker phân tích chi phí, kiểm tra bảo mật, tối ưu tài nguyên và quản lý hạ tầng ở quy mô lớn. AWS xác thực bằng IAM role (AssumeRole) hoặc IAM user access key; xác thực dựa trên role được khuyến nghị mạnh mẽ vì sử dụng thông tin xác thực ngắn hạn qua AWS STS và tránh lưu trữ secret dài hạn.

Điều kiện tiên quyết

  • Tài khoản AWS với quyền quản trị IAM.
  • Quyền tạo IAM role hoặc IAM user trong tài khoản đích.
  • Truy cập vào AWS CloudShell hoặc IAM console để thiết lập.
Xác thực dựa trên role (AssumeRole) được ưu tiên mạnh mẽ. Chỉ dùng access key khi AssumeRole không khả thi trong môi trường của bạn.

Thiết lập

IAM role với AssumeRole

Phương pháp này tạo một IAM role mà CloudThinker đảm nhận để truy cập tài nguyên của bạn. Ưu điểm:
  • Không chia sẻ hoặc lưu trữ thông tin xác thực dài hạn
  • Sử dụng AWS STS để có thông tin xác thực tạm thời, tự động xoay vòng
  • External ID bảo vệ khỏi các cuộc tấn công confused deputy
  • Dễ dàng kiểm tra và thu hồi quyền truy cập

Thiết lập nhanh qua CloudShell

1

Mở AWS CloudShell

Đăng nhập vào AWS Console và mở CloudShell từ thanh điều hướng trên cùng.
2

Chạy script thiết lập

Trong hộp thoại kết nối của CloudThinker, nhấp Copy Script và dán vào CloudShell. Script sẽ:
  • Kiểm tra CloudThinkerAccessRole chưa tồn tại
  • Tạo IAM role với quyền chỉ đọc
  • Gắn trust policy với External ID của bạn
3

Sao chép Role ARN

Sao chép Role ARN từ đầu ra:
arn:aws:iam::123456789012:role/CloudThinkerAccessRole
4

Hoàn tất kết nối

Dán Role ARN vào CloudThinker, chọn region của bạn và nhấp Connect. CloudThinker xác minh role và hiển thị trạng thái Connected.

Đầu ra mong đợi

Starting CloudThinker IAM Role setup...
✅ Role does not exist, proceeding...
✅ Role created successfully
✅ Policy attached successfully
==========================================
✅ Setup Complete!
==========================================
Copy this Role ARN:
arn:aws:iam::123456789012:role/CloudThinkerAccessRole

Tạo role thủ công

Nếu bạn muốn thiết lập thủ công:Trust policy:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::CLOUDTHINKER_ACCOUNT_ID:root"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "sts:ExternalId": "YOUR_EXTERNAL_ID"
        }
      }
    }
  ]
}
Permission policy:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ec2:Describe*",
        "rds:Describe*",
        "s3:GetBucket*",
        "s3:List*",
        "cloudwatch:GetMetric*",
        "cloudwatch:List*",
        "ce:GetCost*",
        "ce:GetReservation*",
        "iam:GetRole",
        "iam:ListRoles"
      ],
      "Resource": "*"
    }
  ]
}

Thiết lập đa tài khoản

Đối với tổ chức có nhiều tài khoản AWS:
1

Tạo role trong từng tài khoản

Triển khai IAM role bằng CloudFormation StackSets trên tất cả tài khoản đích.
2

Sử dụng AWS Organizations

Kết nối tài khoản quản lý để có tầm nhìn toàn tổ chức.
3

Thêm từng tài khoản

Thêm từng kết nối tài khoản riêng lẻ trong CloudThinker.

Chi tiết kết nối

TrườngMô tảVí dụ
Role ARNARN của IAM role mà CloudThinker đảm nhận (phương pháp dựa trên role)arn:aws:iam::123456789012:role/CloudThinkerAccessRole
External IDID bí mật trong trust policy, được CloudThinker cung cấp
RegionAWS region chính cho kết nối nàyus-east-1
Access Key IDKey ID của IAM user (chỉ phương pháp access key)
Secret Access KeySecret key của IAM user (chỉ phương pháp access key)

Quyền cần thiết

Tối thiểu (phân tích chỉ đọc)

ec2:Describe*
rds:Describe*
s3:GetBucket*, s3:List*
cloudwatch:GetMetric*, cloudwatch:List*
ce:GetCost*, ce:GetReservation*
iam:GetRole, iam:ListRoles

Khuyến nghị (phân tích đầy đủ)

# Tất cả quyền tối thiểu, cộng thêm:
elasticloadbalancing:Describe*
autoscaling:Describe*
lambda:List*, lambda:GetFunction*
ecs:Describe*, ecs:List*
eks:Describe*, eks:List*
securityhub:Get*, securityhub:List*
guardduty:Get*, guardduty:List*
config:Describe*, config:Get*
cloudtrail:Describe*, cloudtrail:Get*
Bắt đầu với quyền tối thiểu và mở rộng khi cần. Bật Cost Explorer trong AWS Console trước khi kết nối — có thể mất tới 24 giờ để kích hoạt trên tài khoản mới.

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 AWS của bạn.
AgentKhả năng AWS
AlexPhân tích chi phí, right-sizing EC2, đề xuất Reserved Instance, tối ưu tài nguyên
OliverPhát hiện Security Hub, kiểm tra IAM, kiểm tra tuân thủ, đánh giá lỗ hổng bảo mật
TonyPhân tích hiệu năng RDS, tối ưu Aurora, điều chỉnh DynamoDB
KaiQuản lý cluster EKS, tối ưu Fargate, phân tích container

Xác minh kết nối

@alex run an AWS account check and list the connected account ID and active regions

Ví dụ câu lệnh

@alex analyze EC2 costs over the last 30 days and #recommend right-sizing opportunities
@oliver audit IAM roles and flag any with excessive permissions or missing MFA requirements
@kai check EKS cluster health across all connected regions and #report any failing pods

Xử lý sự cố

Xác minh IAM role có đủ quyền cần thiết. Kiểm tra trust policy có chứa account ID của CloudThinker, xác nhận External ID khớp chính xác, và đảm bảo Role ARN đúng.
Bật Cost Explorer trong AWS Console (mất tới 24 giờ để kích hoạt). Xác minh quyền ce:GetCost* đã được cấp và kiểm tra rằng tùy chọn thanh toán cho phép truy cập theo chương trình.
Xác minh CloudWatch metric đang được thu thập. Kiểm tra rằng lựa chọn region bao gồm tất cả region liên quan và xác nhận các dịch vụ đang chạy và tạo ra dữ liệu.
Kiểm tra kết nối mạng tới AWS API. Xác minh không có VPC endpoint nào đang chặn quyền truy cập và thử kết nối từ region khác.

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.
  • Dùng IAM role — ưu tiên AssumeRole hơn access key dài hạn; IAM role sử dụng thông tin xác thực STS ngắn hạn tự động xoay vòng và không cần lưu trữ secret.
  • Bật CloudTrail — kiểm tra tất cả lời gọi API được thực hiện qua kết nối CloudThinker để duy trì nhật ký hoạt động đầy đủ.

Liên quan

Agent Alex

Agent tối ưu cloud tập trung vào AWS

Bring Your Own Key (BYOK)

Sử dụng thông tin xác thực AWS Bedrock của bạn để dùng LLM không giới hạn