Cộng đồng blog

TRANG CHỦDành cho nhà phát triển Cộng đồng Blog blog kỹ sư SCSK Phần 2: Vai trò tỷ lệ cá cược hôm nay OpenShift là gì? Lời giải thích thực tế về những gì bạn có thể và không thể làm

Phần 2: Vai trò tỷ lệ cá cược hôm nay OpenShift là gì? Lời giải thích thực tế về những gì bạn có thể và không thể làm

Xin chào, tôi là Ishikawa đến từ SCSK

Lần trước, chúng tôi đã giải thích các đặc quyền mặc định mà người dùng có ngay sau khi tạo Lần này, chúng ta sẽ đi sâu vào vai trò "tỷ lệ cá cược hôm nay (tỷ lệ cá cược hôm nay dự án)", vai trò này thường được sử dụng trong các hoạt động thực tế của dự án Mặc dù được gọi là "tỷ lệ cá cược hôm nay" nhưng vai trò tỷ lệ cá cược hôm nay của OpenShift không phải là "một kích cỡ phù hợp cho tất cả" Lần này, hãy kiểm tra ranh giới

Loạt

Mục lục

  1. Cấp vai trò tỷ lệ cá cược hôm nay cho người dùng
  2. Kiểm tra định nghĩa vai trò tỷ lệ cá cược hôm nay
  3. Thao tác tài nguyên trong dự án (Pod, Triển khai, Dịch vụ)
  4. Cấp đặc quyền cho người dùng khác (tạo Ràng buộc vai trò)
  5. Cố gắng thay đổi ResourceQuota
  6. Cố gắng tham khảo thông tin nút
  7. Tóm tắt

1 Cấp vai trò tỷ lệ cá cược hôm nay cho người dùng

Đầu tiên, người dùng cần xác minhocpuser01Tạo dự ánocp-prj01

# Tạo người dùng và dự án$ oc dự án mới ocp-prj01"ocp-prj01"trên máy chủ..thêmđăng ký dự án này với'ứng dụng mới'lệnh Ví dụ: hãy thử:trongRuby Hoặc sử dụng kubectl để triển khai ứng dụng Kubernetes đơn giản:--hình ảnh=registryk8sio/e2e-test-images/agnhost:243 -- /agnhost phục vụ-tên máy chủ# Cấp vai trò tỷ lệ cá cược hôm nay (Tạo liên kết vai trò)$ oc adm chính sách bổ sung vai trò cho người dùng tỷ lệ cá cược hôm nay ocpuser01-nocp-prj01"ocpuser01"

Bây giờ,ocpuser01ocp-prj01

2 Kiểm tra định nghĩa vai trò tỷ lệ cá cược hôm nay

Trước khi thực hiện bất kỳ thao tác nào, hãy kiểm tra định nghĩa về những đặc quyền mà vai trò tỷ lệ cá cược hôm nay có

# Kiểm tra vai trò tỷ lệ cá cược hôm nay$ oc mô tả tỷ lệ cá cược hôm nay clusterrole=rbac-mặc địnhđúngQuy tắc chính sách:..[]                 []                                                                 [tạo bản cập nhật bản vá xóa xóa bộ sưu tập nhận danh sách theo dõi]deploymentsapps[]                 []                                                                 [tạo bản cập nhật bản vá xóa xóa bộ sưu tập nhận danh sách theo dõi]ràng buộc vai trò[]                 []                                                                 [tạo xóa xóa bộ sưu tập nhận danh sách cập nhật bản vá]vai trò[]                 []                                                                 [tạo xóa xóa bộ sưu tập nhận danh sách cập nhật bản vá]

nhómtriển khaiKhông chỉràng buộc vai tròvà cho nhiều nguồn tài nguyên khác nhau Đây làtỷ lệ cá cược hôm nayLăn vàsửaĐó là sự khác biệt lớn giữa các vai trò

3. Hoạt động trên các tài nguyên trong dự án

Đăng nhập với tư cách người dùng tỷ lệ cá cược hôm nay và thử các thao tác tài nguyên phổ biến

# Chuyển đổi người dùng$ oc đăng nhập-uocpuser01..chohttps://apixxx... (openshift)Tên người dùng: ocpuser01"ocp-prj01"Sử dụng dự án"ocp-prj01".

# Kiểm tra người dùng hiện tại$ocwhoamiocpuser01# Tạo nhóm$ oc chạy nginx--hình ảnh=nginx# Xóa nhóm$ oc xóa pod nginx"nginx"đã xóatrongkhông gian tên ocp-prj01

4 Cấp quyền cho người dùng khác (tạo RoleBinding)

Vai trò quan trọng của người quản lý dự án là "trao quyền cho các thành viên trong nhóm" Người dùng có vai trò tỷ lệ cá cược hôm nay chỉ có thể mời người dùng khác (tạo Ràng buộc vai trò) trong các dự án của riêng họ

# Cấp đặc quyền chỉnh sửa cho nhà phát triển ứng dụng (devuser01)$ oc adm chính sách bổ sung vai trò cho người dùng chỉnh sửa devuser01-nocp-prj01"devuser01"

tỷ lệ cá cược hôm nay dự án có thể tự động quản lý quyền cho các thành viên trong nhóm mà không cần hỏi tỷ lệ cá cược hôm nay OpenShift
Tuy nhiên, bạn chỉ có thể cấp quyền cấp dự án cho người dùng đã tạo và bạn không thể tạo người dùng hoặc cấp quyền cấp cụm

$ oc nhận người dùng(Bị cấm): cấm useruseropenshiftio: Người dùng"ocpuser01"không thể liệt kê tài nguyên"người dùng" trongNhóm API"useropenshiftio"ở phạm vi cụm

5 Cố gắng thay đổi ResourceQuota (giới hạn tài nguyên)

Bây giờ đến điểm chính tỷ lệ cá cược hôm nay dự án có thể quản lý "mọi thứ" trong một dự án không? Cố gắng kiểm tra/tạo/xóa ResourceQuota

# Kiểm tra (lấy) ResourceQuota hiện tại$ oc nhận hạn ngạch tài nguyêntrongkhông gian tên ocp-prj01# Cố gắng tạo ResourceQuota mới$ oc tạohạn ngạchhạn ngạch kiểm tra--khó=nhóm=10,cpu=4,bộ nhớ=8Gi"ocpuser01"không thể tạo tài nguyên"hạn ngạch tài nguyên" trongNhóm API"" trongkhông gian tên"ocp-prj01"

# Cố gắng xóa ResourceQuota (nếu nó tồn tại)$ oc xóa hạn ngạch tài nguyên kiểm tra hạn ngạch(Bị cấm): hạn ngạch tài nguyên"hạn ngạch kiểm tra"bị cấm: Người dùng"ocpuser01"không thể xóa tài nguyên"hạn ngạch tài nguyên" trongNhóm API"" trongkhông gian tên"ocp-prj01"

Không thành công Kiểm tra ResourceQuota hiện tại (nhận) có thể được ủy quyền (lần này không có gì được hiển thị vì mục tiêu không tồn tại), nhưng tạo một (tạo) hoặc xóa (xóa) Vai trò tỷ lệ cá cược hôm nay là tỷ lệ cá cược hôm nay tài nguyên trong một dự án, nhưngBạn không có quyền tạo, thay đổi hoặc xóa giới hạn tiêu thụ tài nguyên (ResourceQuota)Đây là khu vực cần được kiểm soát bởi tỷ lệ cá cược hôm nay OpenShift (tỷ lệ cá cược hôm nay cụm) để ngăn một dự án độc quyền tài nguyên trong môi trường nhiều người thuê

6 Cố gắng tham khảo thông tin nút

Tiếp theo, hãy xem liệu chúng ta có thể xem thông tin nút hay không, tức là thông tin về toàn bộ cụm

# Lấy danh sách nút$ oc nhận nút(Bị cấm): nút bị cấm: Người dùng"ocpuser01"không thể liệt kê tài nguyên"nút" trongNhóm API""ở phạm vi cụm

Việc này cũng không thành công Vai trò tỷ lệ cá cược hôm nay chỉ là tỷ lệ cá cược hôm nay được giới hạn trong "Không gian tên (dự án)" và không thể tham chiếu hoặc vận hành các tài nguyên cấp cụm (Node, PersistentVolume, vv)

7 Kiểm tra xem ứng dụng có thể được triển khai với đặc quyền của tỷ lệ cá cược hôm nay hay không

Trong cài đặt phát triển thực tế, người ta dễ nghĩ rằng bất kỳ ai có đặc quyền tỷ lệ cá cược hôm nay đều có thể triển khai bất kỳ thứ gì, nhưng thực tế có rất nhiều trở ngại Chúng tôi đã tổ chức các kịch bản triển khai ứng dụng phổ biến có thể được hoàn thành chỉ với đặc quyền của tỷ lệ cá cược hôm nay

Danh sách kiểm tra quyền theo kịch bản

# Kịch bản Thao tác bắt buộc Có được với đặc quyền của tỷ lệ cá cược hôm nay Yêu cầu quyền bổ sung (đích yêu cầu)
1 Khởi động Pod với tư cách không phải root Khởi chạy Pod cho các ứng dụng web chung, vv (SCC bị hạn chế) 〇 Có thể Không cần thiết
2 Sử dụng SCC đặc quyền anyuid(khởi động gốc),quyền truy cập máy chủvv × Không thể tỷ lệ cá cược hôm nay OpenShift (đặc quyền sử dụng SCC)
3 Tạo SCC tùy chỉnh Tạo SCC của riêng bạn và đưa cho SA × Không thể tỷ lệ cá cược hôm nay OpenShift (đặc quyền tạo SCC)
4 Tạo ClusterRoleBinding Cấp quyền trên toàn cụm (ClusterRoleBinding) cho SA × Không thể tỷ lệ cá cược hôm nay OpenShift (Đặc quyền tạo ClusterRoleBinding)
5 Tạo CRD Tạo định nghĩa tài nguyên tùy chỉnh × Không thể tỷ lệ cá cược hôm nay OpenShift (đặc quyền tạo CRD)
6 Tạo PV Tạo tĩnh PersistentVolume (PV) × Không thể tỷ lệ cá cược hôm nay OpenShift (đặc quyền tạo PV)
*Có thể phân bổ động bằng PVC với tỷ lệ cá cược hôm nay
7 Giới thiệu toán tử Người vận hành cài đặt (Đăng ký, quản lý CR) △ Có thể một phần Chỉ khi Nhóm toán tử trong phạm vi không gian tên được định cấu hình sẵn Cấu hình tiêu chuẩn yêu cầu tỷ lệ cá cược hôm nay OpenShift
8 Xem các dự án khác Truy cập tài nguyên từ các dự án khác × Không thể tỷ lệ cá cược hôm nay dự án mục tiêu (đã thêm RoleBinding)
9 Vào/Tuyến đường Tạo tuyến đường (HTTP/HTTPS) 〇 Có thể Việc quản lý chứng chỉ, vv có thể được thực hiện với Cơ quan bí mật
10 Thực thi bản dựng BuildConfig, Xây dựng bằng ImageStream 〇 Có thể Có thể tự xây dựng (không thể xây dựng yêu cầu SCC đặc quyền)
11 Chính sách mạng Tạo quy tắc kiểm soát giao tiếp 〇 Có thể Không cần thiết

Điểm

  • Khi cần có "đặc quyền", tỷ lệ cá cược hôm nay không thể thực hiện được:gốcCác hoạt động gây ra rủi ro bảo mật cao, chẳng hạn như thực thi với tư cách người dùng (anyuid) hoặc gắn vùng hệ điều hành máy chủ (hostaccess), không được vai trò tỷ lệ cá cược hôm nay cho phép Những điều này phải được yêu cầu từ tỷ lệ cá cược hôm nay OpenShift của bạn
  • Không thể thực hiện bất cứ điều gì liên quan đến "toàn bộ cụm": CRD và PV (tĩnh) là các tài nguyên trên toàn cụm nên không tỷ lệ cá cược hôm nay dự án cụ thể nào có thể chạm vào chúng

8 Tóm tắt

Với xác thực này, ranh giới của vai trò tỷ lệ cá cược hôm nay đã trở nên rõ ràng hơn

Danh mục hoạt động Hành động cụ thể Có được không với đặc quyền của tỷ lệ cá cược hôm nay
Quản lý ứng dụng Pod, Dịch vụ, Triển khai,Bí mật, Bản đồ cấu hình, LimitRangevv tạo/xóa 〇 Có thể
Quản lý nhóm Tạo liên kết vai trò trong dự án (thêm thành viên) 〇 Có thể
Giới hạn tài nguyên Tạo/Thay đổi/Xóa hạn ngạch tài nguyên × Bị cấm
Tham khảo cơ sở Tham khảo thông tin về nút, PV × Bị cấm
Triển khai nâng cao Sử dụng SCC đặc quyền, tạo CRD × Bị cấm
  • Quản lý bí mật: Vai trò tỷ lệ cá cược hôm nay làBí mậtĐây là đặc quyền cần thiết để quản lý mật khẩu cơ sở dữ liệu và khóa API, nhưng điều đó cũng có nghĩa là "người dùng có đặc quyền tỷ lệ cá cược hôm nay có thể xem bất kỳ thông tin nhạy cảm nào trong dự án" Điều quan trọng để bảo mật là không cấp đặc quyền tỷ lệ cá cược hôm nay cho những thành viên không cần thiết
  • Ràng buộc hạn ngạch tài nguyên:Hạn ngạch tài nguyêngiống như một hợp đồng mà tỷ lệ cá cược hôm nay OpenShift quy định rằng ``dự án này sẽ được cung cấp nhiều tài nguyên (CPU/bộ nhớ) như thế này'' Do đó, nếu người quản lý dự án có thể tự thay đổi điều này, việc quản lý tài nguyên sẽ bị phá vỡ Đây là lý do tại sao các đặc quyền được tách biệt

Lần tới, chúng ta sẽ xem điều gì sẽ xảy ra khi chúng ta cấp vai trò tỷ lệ cá cược hôm nay bằng ClusterRoleBinding

Chọn nền tảng container hàng đầu trong ngành

OpenShift không chỉ nâng cao hiệu quả vận hành cơ sở hạ tầng mà còn cung cấp các chức năng cần thiết để các nhà phát triển ứng dụng có thể tập trung phát triển mã nguồn