Quản lý định danh và truy cập

Một phần của tài liệu Tìm hiểu openstack và các vấn đề an ninh thông tin (Trang 26 - 29)

2.1.1 Identity Provisioning/Deprovisioning

User Provisioning là quá trình đăng ký các người dùng mới vào trong hệ thớng. Deprovisioning là q trình ngược lại của Provisioning đó là q trình xóa người dùng ra khỏi hệ thớng. Trong quá trình nghiên cứu các vấn đề an ninh liên quan đến điện toán đám mây, chúng ta đã nhận thấy sự cần thiết của nhiệm vụ quản lý người dùng một cách tự động. Trước khi thảo luận và quản lý định danh, chúng ra cần phải phân tích xác thực, ủy quyền trong Openstack Object Storage

Như trong các tài liệu về Openstack Storage, hệ thống xác thực ủy quyền là một hệ thống rời và khơng phụ thuộc vào chính bản thân các Project. Đến nay có 3 hệ thớng triển khai được đưa ra: Tempauth (Devauth), Swauth and Keystone. Sự khác nhau giữa các hệ thống này là nơi các dữ liệu được lưu trữ và mục đích triển khai Openstack.

Tempauth sử dụng cơ sở dữ liệu SQLite như một nơi lưu trữ thông tin người dùng. SQLite là một hệ quản trị cơ sở dữ liệu khá nhẹ, nó lưu trữ cơ sở dữ liệu trong một tập tin đa nền tảng duy nhất trên ổ cứng. Giữa những lợi ích của lưu trữ dữ liệu xác thực trong SQLite thì nổi hơn cả là tính di động của dữ liệu. Đơn giản như là chuyển người dùng từ Server này sang Server khác thì chúng ra chỉ cần sao chép một tệp tin của SQLite. Tuy nhiên, độ tin cậy trong SQLite là vấn đề về khả năng mở rộng. SQLite cho phép khả năng đọc cùng lúc nhiều từ tập tin cơ sở dữ liệu nhưng một lúc chỉ một được phép ghi lên. Trong thực tế, nó có nghĩa là sử dụng

25

Tempauth trong một hệ thớng nơi mà có người dùng phải đăng ký cùng lúc có thể xảy ra sự giảm hiệu năng đáng kể. Dù cho vẫn còn vấn đề về khả năng mở rộng thì Tempauth vẫn được sử dụng là hệ thống xác thực trong Openstack cho các nhà phát triển. Trong tài liệu quản trị Openstack Obejct Storage mơ tả rất ít về Tempauth, đó chính là tại sao chúng ta cần phải nghiên cứu nó trong các vấn đề an ninh Openstack

Không giống như Tempauth, Swauth là một hệ thớng xác thực và ủy quyền có khả năng co giãn tớt. Nó được sử dụng trong chính Openstack Object Storage như là một nơi lưu trữ dữ liệu người dùng. Để sử dụng Swauth thì một tài khoản dành riêng được tạo ra trên một cụm Openstack Object Storage. Thông tin người dùng được lưu trữ dưới dạng dữ liệu mã hóa JSON. Nó cũng chính là Object của Openstack Object Storage.

Keystone là hệ thống riêng rẽ mới nhất được áp dụng cho các phiên bản gần đây. Nó cũng như Tempauth là sử dụng cơ sở dữ liệu để lưu trữ thông tin người dùng. Tuy nhiên nó có nhiều tùy chọn cơ sở dữ liệu như SQL, SQLite, Mariadb… do đó có thể chọn các cơ sở dữ liệu mã nguồn mở cho phép mở rộng tính năng cũng như làm giảm các vấn đề nhược điểm của SQLite.

User Provisioning/Deprovisioning trong Openstack Object Storage sử dụng tính vai trị. Tuy nhiên các tài liệu về Openstack có rất ít thơng tin về các vai trò hiện tại cũng như quyền của chúng. Chúng ta phải sử dụng một mã nguồn để phân tích thơng tin về các loại người dùng tồn tại trong Openstack Object Storage cũng như quyền về tài khoản, Container hay quản lý Object. Dưới đây là các vai trò user trong Openstack Object Storage.

 User/Member: người dùng khơng có bất ký quyền gì liên quan đến quản trị.

 Admin: Có thể thêm /xóa người dùng trong khu của mình.

 Reseller Admin có quyền của Admin trên tất cả các tài khoản. Tuy nhiên không thể thêm tài khoản Reseller Admins khác.

 Super Admin: Là người dùng có quyền hành cao nhất, có thể thi hành tất cả quy trình quản lý người dùng, có thể thêm Reseller Admins.

26

Openstack Object Storage cung cấp tính di động trong việc đăng ký nhận dạng theo yêu cầu trong cả 3 hệ thống Tempauth, Swauth và Keystone, là tiền đề cần thiết cho các dịch vụ đám mây tự động. Nhiệm vụ xóa và cập nhật thơng tin người dùng chỉ có thể xảy ra tự động với Swauth cịn với Tempauth thì q trình đó phải được làm bằng tay với việc cập nhật cơ sở dữ liệu. Chúng ta nên lưu ý rẳng việc xóa người sử dụng tức thời khá quan trọng. Ví dụ một nhân viên buộc phải thôi việc ở một tổ chức có thể với những lý do cá nhân sẽ làm hại tổ chức bằng việc sử dụng các kiến thức nội bộ và sự ủy nhiệm truy cập trước đây. Do đó người đó phải được cấm truy cập hệ thớng sớm nhất có thể, việc này thì khơng thể xảy ra được trong Tempauth/Keystone

Giải pháp quản lý định danh của Openstack Object Storage là sở hữu riêng và không tuân theo bất kỳ quy chuẩn công nghiệp nào. Trong tài liệu “Security Guidance for Critical Areas of Focus in Cloud Computing”[4] có cảnh báo rằng khách hàng không nên sử dụng các giải pháp sở hữu riêng cho quá trình đăng ký định danh. Thay vào đó, giải pháp xây dựng dựa trên SPML (Ngôn ngữ đánh dấu đăng ký dịch vụ)[33] được khuyến nghị để tránh khách hàng bị đóng kín với các giải pháp tùy chỉnh.

2.1.2 Xác thực

Quá trình xác thực được biễu diễn như hình 1 dưới đây. Cả 3 hệ thống xác thực trong Openstack Object Storage sử dụng tổ hợp username/password để xác thực người dùng. Quá trình xác thực thành công, một người dùng sẽ nhận được.

 Một Token: Nó sẽ xác nhận người dùng với hệ thống sau này

 Một URL để sử dụng cho việc truy cập vào tài khoản người dùng, sẽ cần thiết để làm việc với Openstack sau khi xác thực. Token được cấu hình với thời gian giới hạn. Thời gian mặc định đó là 24 tiếng. URL tài khoản sẽ sau quá trình đăng ký tài khoản và không bao giờ thay đổi.

27

Hình 1 Xác thực trong Openstack Object Storage

Tất cả các tài liệu về an ninh điện toán đám mây ở chương 2 đều nhấn mạnh vào cho phép sự ủy quyền xác thực ví dụ như cho phép ở định dạng SAML. Hiện này đã có thể triển khai chức năng này trên Keystone tuy nhiên đang trong quá trình triển khai, đánh giá

Bên cạnh đó, theo như “Security Guidance for Critical Areas of Focus in Cloud Computing” từ Cloud Security Alliance[4], dịch vụ xác thực được sử dụng bởi các nhà cung cấp đám mây sẽ phải tuân thủ OATH[34] để tránh thơng tin xác thực bị đóng kín. Hiện nay, hệ thớng xác thực cung cấp bởi Openstack là Keystone có thể tuân theo OATH[34].

Một phần của tài liệu Tìm hiểu openstack và các vấn đề an ninh thông tin (Trang 26 - 29)

Tải bản đầy đủ (PDF)

(67 trang)