Bạn có thể yêu cầu MFA cho tài khoản AWS IAM không?


23

Có thể yêu cầu Xác thực nhiều yếu tố (MFA) cho các tài khoản IAM cụ thể / tất cả trong Dịch vụ web của Amazon không?

Có các tùy chọn cho các yêu cầu mật khẩu và rõ ràng làm thế nào người ta có thể chọn thêm nó vào tài khoản của một người, nhưng không rõ liệu có tùy chọn nào để buộc người dùng phải có MFA hay không.


Chính sách IAM yêu cầu MFA cho hầu hết các hành động: docs.aws.amazon.com/IAM/latest/UserGuide/ Kẻ
Simon Woodside

Câu trả lời:


13

Câu trả lời là có, có. Bằng cách sử dụng một điều kiện. Ví dụ: đối với tài khoản quản trị viên:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "*",
      "Resource": "*", 
      "Condition":
      {
          "Null":{"aws:MultiFactorAuthAge":"false"}
      }
    }
  ]
}

Nó sẽ thực thi MFA cho cả xác thực mật khẩu và xác thực dựa trên mã thông báo bằng API.


6
Làm theo cách này sẽ yêu cầu nó cho cả truy cập Console & API; nó sẽ có thể yêu cầu nó cho chỉ truy cập điều khiển?
jeffbyrnes

Không ý kiến. Tôi biết rằng thật khó chịu cho API (CLI) vì MFA không được hỗ trợ tốt. BTW Tôi không thực sự thấy điểm thiết lập bảo mật mạnh hơn nếu đó là một cách để vượt qua nó bằng cách sử dụng một phương thức truy cập khác.
smad

3
@smad Tôi nghĩ vấn đề là thông tin mã thông báo sẽ được tạo tự động và được lưu trữ trên ổ cứng của người dùng để vectơ tấn công duy nhất lấy từ máy tính của người dùng, thông qua phần mềm độc hại, đánh cắp máy tính, v.v. mặt khác có thể yếu hoặc được sử dụng lại trên các trang web khác, do đó, có thêm một vectơ tấn công vũ phu - buộc nó hoặc lấy nó từ một bãi chứa mật khẩu từ một trang web bị tấn công. Chính sách mật khẩu có thể giúp ích nhưng thật khó để ngăn chặn ppl, ví dụ như sử dụng một từ trong từ chỉ có i thay thế bằng 1 hoặc!
danny

@jeffbyrnes Khi bạn kích hoạt người dùng cho MFA, điều này theo mặc định chỉ được bật cho truy cập bảng điều khiển. Sau đó, bạn phải sử dụng chính sách IAM như thế này để xác định những hành động API / CLI nào yêu cầu MFA, nếu có.
SeanFromIT

1
Tôi không chắc điều này có hiệu quả nữa không - ít nhất, trừ khi tôi không áp dụng đúng cách! (như một chính sách mới, được gán cho nhóm Quản trị viên). Cả quản trị viên mới và hiện có trên tài khoản của tôi đều có thể đăng nhập mà không cần thiết lập MFA.
Tim Malone

8

Sau một chút nhìn xung quanh, có vẻ như câu trả lời là "loại". Trong IAM, quản trị viên có thể định cấu hình MFA cho người dùng IAM khác. Mặc dù điều này có thể hơi khó khăn nếu bạn đang thiết lập MFA ảo, nhưng điều đó là có thể. Sau đó, nếu người dùng chưa được cấp quyền cập nhật / xóa MFA của họ, điều đó thực sự cần thiết.

Mặc dù tôi chưa xác định danh sách đầy đủ các hành động nên bị từ chối (hoặc đơn giản là không được cấp), bài đăng này dường như có thông tin và tôi sẽ cập nhật câu trả lời này sau khi tôi đã kiểm tra nó.

[Cập nhật]

Tôi đã có thể thiết lập người dùng là người dùng quyền lực (do đó không cấp cho họ quyền truy cập vào các chức năng IAM, mặc dù tôi chắc chắn rằng bạn có thể có được chi tiết hơn) và triển khai MFA của họ với họ. Sử dụng phương pháp này, họ sẽ không thể vô hiệu hóa nó.


1
Bạn có biết nếu có thể để người dùng IAM tự thiết lập MFA không?
kỵ binh

Nếu có, tôi đã không tìm thấy đường.
Joe

2
@MattTagg vâng, có thể, xem docs.aws.amazon.com/IAM/latest/UserGuide/ Kẻ
dasil003

1

Có, bạn có thể yêu cầu tài khoản MFA cho IAM cho cả bảng điều khiển web và cho awsclidòng lệnh. Trên thực tế, không thể yêu cầu MFA một cách đáng tin cậy cho bảng điều khiển web trong khi không yêu cầu nó cho awsclidòng lệnh, bởi vì cả hai đều đánh cùng một API. Tôi nói 'đáng tin cậy' vì với chính sách IAM phức tạp, có thể cho phép một số awsclihoạt động mà không có MFA trong khi thực thi MFA cho bảng điều khiển web. Tuy nhiên, kết quả có phần khó đoán và bên cạnh đó, các khóa IAM đều bằng nhau nếu không nguy hiểm hơn nếu không được bảo vệ. Đề nghị của tôi là yêu cầu nó cho cả hai, và sau đó có lẽ tạo các khóa không được bảo vệ cho các mục đích sử dụng đặc biệt trong đó MFA hoàn toàn chống chỉ định. Đối với các quy trình tự động vai trò sẽ là một lựa chọn tốt hơn nói chung.

Để làm cho các hoạt động MFA trên dòng lệnh dễ dàng hơn, tôi đã tạo một tập hợp các tập lệnh bash và một ví dụ chính sách thực thi MFA được xây dựng cẩn thận để dễ dàng đính kèm / tách vMFAd, và để bắt đầu và quản lý các phiên MFA. Chúng hoạt động trên các biến thể macOS và Linux, nhưng có thể không phải trên Windows (chưa được thử nghiệm).


0

Rõ ràng là không. Dường như các tài khoản MFA cho IAM là tùy chọn, mặc dù bạn tốt nhất nên đăng lên Diễn đàn hỗ trợ AWS để có câu trả lời xác thực.


Cảm ơn liên kết, nhưng nó trả lời một câu hỏi khác về thời điểm MFA sẽ được yêu cầu khi nó được bật. Câu hỏi này là về việc kích hoạt có thể được thực thi.
Joe

0

Chúng tôi đã ghi lại một vài cân nhắc cho đa hệ thống API AWS nói chung (nơi thêm các điều kiện, ý nghĩa, v.v.) trong tài liệu cho một số công cụ tùy chỉnh ( https://github.com/kreuzwerker/awsu ) mà chúng tôi đã phát triển để sử dụng Yubikeys làm nguồn cho mã thông báo TOTP. Điều này làm cho hoạt động với vai trò và thông tin xác thực dài hạn + mã thông báo phiên khá dễ dàng.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.