Làm cách nào để tạo người dùng và cấp đặc quyền trong mongodb?

Ủy quyền là một phần thiết yếu của quản lý người dùng và kiểm soát truy cập xác định các chính sách cho những gì mỗi người dùng được phép thực hiện trên hệ thống. Quyết định chính sách nào phù hợp và triển khai chúng trong cơ sở dữ liệu của bạn đảm bảo rằng người dùng có thể tương tác với các tài nguyên họ yêu cầu trong khi bảo vệ chống lại hành vi không phù hợp

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách ủy quyền hoạt động trong MongoDB. Chúng ta sẽ xem cách MongoDB khái niệm hóa việc quản lý quyền truy cập, loại đặc quyền nào có thể được cấp cho người dùng và cách đính kèm chính sách vào tài khoản người dùng

LIÊN QUAN ĐẾN PRISMA. IO

Nếu bạn đang sử dụng MongoDB, hãy kiểm tra trình kết nối MongoDB của Prisma. Bạn có thể tự tin sử dụng Prisma Client để quản lý cơ sở dữ liệu MongoDB sản xuất

Để bắt đầu làm việc với MongoDB và Prisma, hãy xem hướng dẫn bắt đầu từ đầu của chúng tôi hoặc cách thêm vào một dự án hiện có

Prisma là bộ công cụ cơ sở dữ liệu mã nguồn mở dành cho Typescript và Node. js nhằm mục đích giúp các nhà phát triển ứng dụng làm việc hiệu quả và tự tin hơn khi làm việc với cơ sở dữ liệu

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

Để làm theo hướng dẫn này, bạn sẽ cần có một tài khoản trên máy chủ MongoDB với các đặc quyền phù hợp

Để điều chỉnh cấu hình của MongoDB và kích hoạt ủy quyền trên cơ sở dữ liệu, bạn cần có quyền truy cập cấp

sudo systemctl restart mongod.service

0 trên máy chủ

Ngoài ra, trong MongoDB, bạn sẽ cần một tài khoản có ít nhất vai trò

sudo systemctl restart mongod.service

1 để có thể thiết lập các chính sách ủy quyền dựa trên vai trò. Các vai trò bao gồm vai trò

sudo systemctl restart mongod.service

1, được liệt kê từ mức độ tập trung hẹp nhất đến mức độ đặc quyền rộng nhất là

  • sudo systemctl restart mongod.service

    1
  • sudo systemctl restart mongod.service

    4
  • sudo systemctl restart mongod.service

    5
  • sudo systemctl restart mongod.service

    0

Ủy quyền hoạt động như thế nào trong MongoDB?

Quản lý ủy quyền và đặc quyền trong MongoDB được triển khai bằng Kiểm soát truy cập dựa trên vai trò (RBAC). Trong hệ thống này, các cấp độ truy cập khác nhau được liên kết với các vai trò riêng lẻ. Để cấp cho người dùng quyền thực hiện một hành động, bạn cấp cho họ tư cách thành viên cho một vai trò có các đặc quyền phù hợp

Các vai trò trong MongoDB có thể được lồng vào nhau. Điều này có nghĩa là các vai trò có thể được cấp cho các vai trò khác. Vai trò chứa vai trò khác kế thừa tất cả các đặc quyền của vai trò con. Điều này cho phép tạo các vai trò mới có các đặc quyền mong muốn bằng cách kết hợp các vai trò một cách thích hợp

Bản thân các đặc quyền được xác định bởi sự kết hợp giữa một hành động và một tài nguyên. Thành phần hành động mô tả loại hành vi được đặc quyền cho phép, trong khi tài nguyên chỉ ra mục tiêu hoặc phạm vi của hành động

Những tài nguyên nào có sẵn trong MongoDB?

Mục tiêu hoặc phạm vi của một hành động được gọi là tài nguyên trong mô hình kiểm soát truy cập của MongoDB. Mỗi hành động chỉ có thể được áp dụng cho một số loại tài nguyên. Khi định cấu hình đặc quyền, bạn chỉ định chính xác tài nguyên mà đặc quyền sẽ được xác định phạm vi

Chúng ta có thể xem qua các tài nguyên có sẵn theo thứ tự từ trọng tâm hẹp nhất đến rộng nhất

Các đặc quyền có thể được xác định hẹp nhất bằng cách xác định phạm vi chúng cho một bộ sưu tập cụ thể trong một cơ sở dữ liệu cụ thể trong cụm. Trong cùng một cơ sở dữ liệu, các bộ sưu tập khác nhau có thể chỉ định các đặc quyền khác nhau. Điều này cho phép bạn triển khai các chính sách chi tiết cho các loại dữ liệu khác nhau

Tài nguyên lớn nhất tiếp theo mà bạn có thể ban hành chính sách là cơ sở dữ liệu. Quản lý các đặc quyền ở cấp độ cơ sở dữ liệu cho phép bạn cung cấp chính sách chung sẽ ảnh hưởng đến toàn bộ cơ sở dữ liệu và tất cả các bộ sưu tập bên trong.

Bạn cũng có thể đặt các chính sách áp dụng cho các bộ sưu tập cùng tên trên tất cả các cơ sở dữ liệu. Điều này cho phép bạn sử dụng các quy ước đặt tên để triển khai kiểm soát truy cập cho các bộ sưu tập cụ thể trên toàn hệ thống của mình. Một phiên bản rộng hơn của điều này là áp dụng chính sách cho tất cả các cơ sở dữ liệu và bộ sưu tập phi hệ thống trên hệ thống

Cuối cùng, bạn có thể áp dụng chính sách đối với toàn bộ cụm. Các hành động nhắm mục tiêu cụm ảnh hưởng đến hệ thống chung thay vì dữ liệu mà nó đang quản lý trực tiếp. Các chính sách ở cấp cụm có xu hướng tập trung vào các hoạt động hành chính

Những hành động nào có sẵn trong MongoDB?

Có một số lượng lớn các hành động có sẵn trong MongoDB có liên quan đến việc sử dụng chung, quản lý cơ sở dữ liệu và quản lý hệ thống. Nói chung, các hành động tương ứng với một hoặc nhiều lệnh hoặc phương thức trong MongoDB

Để xem danh sách các hành động có sẵn trong MongoDB cũng như chức năng của chúng, hãy mở rộng phần bên dưới

Danh sách các hành động MongoDB

Phạm vi hành độngMô tả

sudo systemctl restart mongod.service

7cơ sở dữ liệu hoặc bộ sưu tậpCho phép thao tác đọc trên cơ sở dữ liệu

sudo systemctl restart mongod.service

8cơ sở dữ liệu hoặc bộ sưu tậpCho phép ghi thao tác trên cơ sở dữ liệu

sudo systemctl restart mongod.service

9cơ sở dữ liệu hoặc bộ sưu tậpCho phép xóa thao tác trên cơ sở dữ liệu

sudo systemctl restart mongod.service

00cơ sở dữ liệu hoặc bộ sưu tậpCho phép thao tác thay thế trên cơ sở dữ liệu

sudo systemctl restart mongod.service

01cơ sở dữ liệu hoặc bộ sưu tậpCho phép người dùng bỏ qua các chính sách xác thực dữ liệu đối với tài liệu.

sudo systemctl restart mongod.service

02clusterCho phép người dùng sử dụng giá trị

sudo systemctl restart mongod.service

03 để tìm tài liệu________cơ sở dữ liệu 104Người dùng có thể sửa đổi dữ liệu tùy chỉnh được liên kết với bất kỳ người dùng nào trong cơ sở dữ liệu________ Cơ sở dữ liệu 105Cho phép người dùng thay đổi dữ liệu tùy chỉnh được liên kết với người dùng của chính họ________cơ sở dữ liệu 106Cho phép người dùng thay đổi mật khẩu tài khoản của chính họ________cơ sở dữ liệu 107Cho phép người dùng thay đổi mật khẩu cho bất kỳ người dùng nào trong cơ sở dữ liệu . 2_______208collectionCho phép người dùng hủy con trỏ của người dùng khác________cơ sở dữ liệu 209Cho phép người dùng xóa vai trò khỏi bất kỳ người dùng nào trong hệ thống________cơ sở dữ liệu 300Cho phép người dùng đặt các yêu cầu xác thực cho người dùng và vai trò

sudo systemctl restart mongod.service

01clusterCho phép người dùng giảm số lượng khóa ghi trên cụmcơ sở dữ liệu

sudo systemctl restart mongod.service

02Cho phép xem chi tiết về vai trò trong cơ sở dữ liệu________cơ sở dữ liệu 303Cho phép xem chi tiết về . 4

sudo systemctl restart mongod.service

06clusterCho phép người dùng kích hoạt cấu hình CPU

sudo systemctl restart mongod.service

07clusterCho phép người dùng xem thông tin về các hoạt động đang được thực hiện hoặc trong hàng đợi của người dùng khác

sudo systemctl restart mongod.service

08clusterCho phép người dùng xóa thủ công chi tiết người dùng khỏi bộ đệm

sudo systemctl restart mongod.service

09clusterCho phép người dùng hủy các hoạt động của người dùng kháccơ sở dữ liệu hoặc bộ sưu tập

sudo systemctl restart mongod.service

00Cho phép người dùng xem thông tin về các kế hoạch truy vấn được lưu trong bộ nhớ cache________cơ sở dữ liệu 401 hoặc bộ sưu tậpCho phép

Vai trò nào có sẵn trong MongoDB theo mặc định?

MongoDB bao gồm một số vai trò hữu ích kết hợp các đặc quyền tương tự với nhau. Các vai trò này cho phép bạn cấp và thu hồi các đặc quyền đối với tài nguyên cơ sở dữ liệu một cách ngắn gọn

Để xem danh sách các hành động có sẵn trong MongoDB cũng như chức năng của chúng, hãy mở rộng phần bên dưới

Danh sách vai trò MongoDB mặc định

  • sudo systemctl restart mongod.service

    022. Cung cấp quyền truy cập đọc vào các bộ sưu tập phi hệ thống
    • hành động
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        016
  • sudo systemctl restart mongod.service

    031. Cung cấp quyền truy cập đọc và ghi vào các bộ sưu tập không thuộc hệ thống
    • hành động
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        8
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        9
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        00
  • sudo systemctl restart mongod.service

    048. Cung cấp quyền truy cập vào các tác vụ quản trị ở cấp cơ sở dữ liệu, không bao gồm vai trò và quản lý người dùng
    • Các hành động trong bộ sưu tập

      sudo systemctl restart mongod.service

      049
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
    • Các hành động trong bộ sưu tập phi hệ thống
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        076
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        020
  • sudo systemctl restart mongod.service

    1. Cung cấp quyền truy cập để tạo và sửa đổi người dùng và vai trò
    • hành động
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        03
  • sudo systemctl restart mongod.service

    4. Cung cấp quyền truy cập quản trị vào cơ sở dữ liệu bao gồm quản lý vai trò và người dùng
    • Vai trò vai trò này kế thừa
      • sudo systemctl restart mongod.service

        031
      • sudo systemctl restart mongod.service

        048
      • sudo systemctl restart mongod.service

        1
  • sudo systemctl restart mongod.service

    099. Cung cấp quyền truy cập đọc vào cụm
    • Hành động cho toàn bộ cụm
      • sudo systemctl restart mongod.service

        007
      • sudo systemctl restart mongod.service

        010
      • sudo systemctl restart mongod.service

        013
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        014
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        015
      • sudo systemctl restart mongod.service

        005
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        018
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        019
      • sudo systemctl restart mongod.service

        008
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        021
    • Hành động cho tất cả các cơ sở dữ liệu trong cụm
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        22
      • sudo systemctl restart mongod.service

        02
    • Hành động cho tất cả các bộ sưu tập

      sudo systemctl restart mongod.service

      049
      • sudo systemctl restart mongod.service

        7
    • Hành động trên các bộ sưu tập phi hệ thống trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      26
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        22
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      37 trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      26
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
    • Thao tác trên tất cả các bộ sưu tập trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      47
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        22
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      37 trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      47
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      68 và

      sudo systemctl restart mongod.service

      049 trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      47
      • sudo systemctl restart mongod.service

        7
  • sudo systemctl restart mongod.service

    72. Cung cấp quyền truy cập giám sát và quản lý trên cụm thông qua cơ sở dữ liệu

    sudo systemctl restart mongod.service

    26 và

    sudo systemctl restart mongod.service

    47
    • Hành động trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        76
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        005
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        000
      • sudo systemctl restart mongod.service

        90
      • sudo systemctl restart mongod.service

        008
    • Hành động trên tất cả các cơ sở dữ liệu trong cụm
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        02
    • Thao tác đối với các bộ sưu tập không thuộc hệ thống trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      26
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        8
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        9
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        00
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      37 trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      26
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
    • Thao tác trên tất cả các bộ sưu tập không thuộc hệ thống trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      47
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        8
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        9
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        00
    • Các hành động cho bộ sưu tập

      sudo systemctl restart mongod.service

      68 trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      47
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
      • sudo systemctl restart mongod.service

        00
  • sudo systemctl restart mongod.service

    042. Cung cấp khả năng giám sát và quản lý máy chủ
    • Hành động trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        050
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        001
      • sudo systemctl restart mongod.service

        002
      • sudo systemctl restart mongod.service

        003
      • sudo systemctl restart mongod.service

        01
  • sudo systemctl restart mongod.service

    058. Cung cấp tất cả quyền truy cập quản lý cụm
    • Vai trò vai trò này kế thừa
      • sudo systemctl restart mongod.service

        72
      • sudo systemctl restart mongod.service

        099
      • sudo systemctl restart mongod.service

        042
    • hành động bổ sung
      • sudo systemctl restart mongod.service

        00
  • sudo systemctl restart mongod.service

    063. Cung cấp các đặc quyền cần thiết để sao lưu dữ liệu
    • Hành động trên tất cả các tài nguyên
      • sudo systemctl restart mongod.service

        015
      • sudo systemctl restart mongod.service

        016
      • sudo systemctl restart mongod.service

        017
    • Hành động trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        76
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        015
      • sudo systemctl restart mongod.service

        019
    • Các hành động đối với bộ sưu tập ngoài hệ thống, bộ sưu tập

      sudo systemctl restart mongod.service

      37 và

      sudo systemctl restart mongod.service

      049, bộ sưu tập

      sudo systemctl restart mongod.service

      073 và

      sudo systemctl restart mongod.service

      074 và bộ sưu tập

      sudo systemctl restart mongod.service

      075
      • sudo systemctl restart mongod.service

        7
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      075
      • sudo systemctl restart mongod.service

        8
      • sudo systemctl restart mongod.service

        00
  • sudo systemctl restart mongod.service

    080. Cung cấp các đặc quyền để khôi phục dữ liệu cho cụm
    • Hành động trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        05
    • Hành động trên các bộ sưu tập phi hệ thống
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        00
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        03
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        06
      • sudo systemctl restart mongod.service

        8
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        03
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      37
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        8
    • Hành động trên bất kỳ tài nguyên
      • sudo systemctl restart mongod.service

        016
    • Hành động trên các bộ sưu tập phi hệ thống trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      26 và

      sudo systemctl restart mongod.service

      47
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        8
    • Các hành động đối với bộ sưu tập

      sudo systemctl restart mongod.service

      015
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        8
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      074
      • sudo systemctl restart mongod.service

        09
    • Thao tác trên bộ sưu tập

      sudo systemctl restart mongod.service

      073
      • sudo systemctl restart mongod.service

        01
      • sudo systemctl restart mongod.service

        05
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        09
      • sudo systemctl restart mongod.service

        02
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        8
      • sudo systemctl restart mongod.service

        9
      • sudo systemctl restart mongod.service

        00
  • sudo systemctl restart mongod.service

    035. Cung cấp các đặc quyền giống như

    sudo systemctl restart mongod.service

    022 cho tất cả các cơ sở dữ liệu ngoại trừ

    sudo systemctl restart mongod.service

    47 và

    sudo systemctl restart mongod.service

    26
    • Các hành động bổ sung trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        015
  • sudo systemctl restart mongod.service

    040. Cung cấp các đặc quyền giống như

    sudo systemctl restart mongod.service

    031 cho tất cả các cơ sở dữ liệu ngoại trừ

    sudo systemctl restart mongod.service

    47 và

    sudo systemctl restart mongod.service

    26
    • Các hành động bổ sung trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        015
  • sudo systemctl restart mongod.service

    5. Cung cấp các đặc quyền giống như

    sudo systemctl restart mongod.service

    1 trên tất cả các cơ sở dữ liệu ngoại trừ

    sudo systemctl restart mongod.service

    47 và

    sudo systemctl restart mongod.service

    26
    • Các hành động bổ sung trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        04
      • sudo systemctl restart mongod.service

        08
      • sudo systemctl restart mongod.service

        015
    • Các hành động bổ sung trên cụm

      sudo systemctl restart mongod.service

      052 và

      sudo systemctl restart mongod.service

      053 trong cơ sở dữ liệu

      sudo systemctl restart mongod.service

      054
      • sudo systemctl restart mongod.service

        009
      • sudo systemctl restart mongod.service

        011
      • sudo systemctl restart mongod.service

        012
      • sudo systemctl restart mongod.service

        7
      • sudo systemctl restart mongod.service

        07
      • sudo systemctl restart mongod.service

        00
  • sudo systemctl restart mongod.service

    061. Cung cấp các đặc quyền giống như

    sudo systemctl restart mongod.service

    048 cho tất cả các cơ sở dữ liệu ngoại trừ

    sudo systemctl restart mongod.service

    47 và

    sudo systemctl restart mongod.service

    26
    • Các hành động bổ sung trên toàn bộ cụm
      • sudo systemctl restart mongod.service

        015
  • sudo systemctl restart mongod.service

    0. Cung cấp quyền truy cập đầy đủ vào toàn bộ hệ thống
    • Vai trò vai trò này kế thừa
      • sudo systemctl restart mongod.service

        040
      • sudo systemctl restart mongod.service

        061
      • sudo systemctl restart mongod.service

        5
      • sudo systemctl restart mongod.service

        058
      • sudo systemctl restart mongod.service

        080
      • sudo systemctl restart mongod.service

        063
    • Các hành động bổ sung đối với bộ sưu tập

      sudo systemctl restart mongod.service

      073
      • sudo systemctl restart mongod.service

        020

Cách bật ủy quyền trong MongoDB

Trước khi MongoDB có thể sử dụng ủy quyền để quản lý đặc quyền của người dùng, bạn phải bật chức năng này trên máy chủ hoặc cụm của mình. Để làm như vậy, bạn phải đăng nhập vào máy chủ của mình bằng

sudo systemctl restart mongod.service

0 hoặc các đặc quyền quản trị khác

Ghi chú. Trước khi bật ủy quyền, hãy kiểm tra kỹ để đảm bảo rằng bạn có quyền truy cập vào ít nhất một vai trò với các đặc quyền cần thiết để quản lý vai trò

Sửa đổi cấu hình của máy chủ MongoDB bằng cách mở tệp

sudo systemctl restart mongod.service

076 trong trình soạn thảo văn bản với tư cách quản trị viên. Lệnh này sẽ mở tệp bằng trình soạn thảo văn bản được xác định trong biến môi trường

sudo systemctl restart mongod.service

077 và quay trở lại

sudo systemctl restart mongod.service

078, có sẵn trên hầu hết các hệ thống

sudo systemctl restart mongod.service

59

Tệp cấu hình MongoDB sử dụng định dạng tuần tự hóa YAML để xác định cấu hình. Bỏ ghi chú hoặc thêm khóa phần

sudo systemctl restart mongod.service

079 vào tệp. Bên dưới khóa này, thụt lề một dòng bằng cách sử dụng khoảng trắng (các tab không được phép trong YAML) và đặt

sudo systemctl restart mongod.service

080 thành

sudo systemctl restart mongod.service

081

sudo systemctl restart mongod.service

0

Lưu và đóng tệp khi bạn hoàn tất

Để bật cài đặt mới, hãy khởi động lại quy trình máy chủ MongoDB của bạn. Nếu máy chủ MongoDB của bạn đang chạy trên máy chủ Linux, thao tác sẽ như thế này

sudo systemctl restart mongod.service

Khi quá trình khởi động lại, khung ủy quyền của MongoDB sẽ được bật trong cơ sở dữ liệu

Xem đặc quyền và vai trò

Trước khi bạn bắt đầu gán vai trò cho người dùng, bạn nên làm quen với cách xem thông tin về các đặc quyền và vai trò trong hệ thống

Để xem tất cả các vai trò có sẵn trên hệ thống, bao gồm tất cả các vai trò tích hợp sẵn và các đặc quyền liên quan của chúng, hãy sử dụng phương pháp

sudo systemctl restart mongod.service

082 với các tùy chọn

sudo systemctl restart mongod.service

083 và

sudo systemctl restart mongod.service

084 được đặt thành

sudo systemctl restart mongod.service

085

sudo systemctl restart mongod.service

0

Danh sách được trả về sẽ bao gồm toàn bộ danh sách thông tin lồng nhau về từng vai trò và đặc quyền mà họ có trên các tài nguyên khác nhau trong toàn hệ thống

Để lấy thông tin về một vai trò cụ thể, hãy sử dụng phương pháp

sudo systemctl restart mongod.service

086 thay thế. Bạn phải ở trên cơ sở dữ liệu nơi người dùng được xác định trước khi thực hiện lệnh

sudo systemctl restart mongod.service

0

Để kiểm tra xem vai trò nào đã được cấp cho từng người dùng, hãy thay đổi cơ sở dữ liệu mà bạn quan tâm và sử dụng phương pháp

sudo systemctl restart mongod.service

087

sudo systemctl restart mongod.service

0

Để kiểm tra các vai trò được liên kết với một người dùng cụ thể, hãy sử dụng

sudo systemctl restart mongod.service

088 thay thế

sudo systemctl restart mongod.service

0

Chỉ định và thu hồi vai trò từ người dùng

Để cấp thêm đặc quyền cho người dùng, bạn phải cấp cho họ quyền truy cập vào một vai trò hiện có

Phương pháp

sudo systemctl restart mongod.service

089 cho phép bạn chỉ định các vai trò bổ sung mà bạn muốn thêm cho người dùng. Đối số đầu tiên của nó là người dùng mà bạn muốn cấp thêm đặc quyền và đối số thứ hai là một mảng các vai trò bổ sung mà bạn muốn thêm

sudo systemctl restart mongod.service

0

Nếu các vai trò được xác định trong cơ sở dữ liệu hiện tại, bạn có thể sử dụng cách viết tắt ở trên để chỉ định vai trò theo tên mà không đề cập đến cơ sở dữ liệu

Để cấp các vai trò được liên kết với một cơ sở dữ liệu khác hoặc để rõ ràng hơn, hãy chỉ định các vai trò dưới dạng tài liệu xác định

sudo systemctl restart mongod.service

090 và

sudo systemctl restart mongod.service

091 thay thế

sudo systemctl restart mongod.service

0

Để thu hồi vai trò của người dùng, bạn có thể sử dụng phương pháp đồng hành có tên là

sudo systemctl restart mongod.service

092. Cú pháp đối số hoạt động giống hệt nhau, nhưng lần này, lệnh sẽ xóa các vai trò khỏi tài khoản đã chỉ định

Để xóa vai trò được xác định trong cơ sở dữ liệu hiện tại, bạn có thể sử dụng tên vai trò mà không đề cập đến cơ sở dữ liệu

sudo systemctl restart mongod.service

0

Để chỉ định các vai trò được liên kết với các cơ sở dữ liệu khác, hãy sử dụng biểu mẫu dài bằng cách chỉ định

sudo systemctl restart mongod.service

090 và

sudo systemctl restart mongod.service

091 trong tài liệu

sudo systemctl restart mongod.service

00

Tạo và quản lý vai trò tùy chỉnh

Đôi khi các vai trò tích hợp sẵn của hệ thống không khớp hoàn toàn với các loại quyền mà bạn cần chỉ định. Trong những trường hợp này, bạn có thể tạo vai trò tùy chỉnh của riêng mình

Tạo vai trò mới

Phương thức

sudo systemctl restart mongod.service

095 cho phép bạn xác định một vai trò mới mà bạn có thể gán các đặc quyền và các vai trò khác cho. Sau đó, bạn có thể cấp vai trò mới của mình cho người dùng để cung cấp cho họ các đặc quyền cụ thể mà bạn đã xác định

Cú pháp cơ bản của phương pháp

sudo systemctl restart mongod.service

095 liên quan đến việc chuyển một tài liệu xác định các đặc điểm của vai trò. Tài liệu có thể có các trường sau

  • sudo systemctl restart mongod.service

    090. Tên bạn muốn đặt cho vai trò
  • sudo systemctl restart mongod.service

    098. Một mảng chứa tập hợp các đặc quyền lỏng lẻo mà bạn muốn gán cho vai trò. Mỗi đặc quyền được xác định trong một tài liệu lồng nhau xác định tài liệu

    sudo systemctl restart mongod.service

    099 (chỉ định tài nguyên nào áp dụng đặc quyền này) cũng như một mảng

    sudo systemctl restart mongod.service

    000 đang được cấp
  • sudo systemctl restart mongod.service

    001. Một loạt các vai trò bổ sung mà vai trò này sẽ kế thừa từ. Vai trò mới sẽ nhận được tất cả các đặc quyền được cấp cho bất kỳ vai trò nào được liệt kê tại đây
  • sudo systemctl restart mongod.service

    002. Một mảng chỉ định mọi hạn chế về xác thực cho vai trò. Điều này cho phép bạn từ chối các đặc quyền của vai trò nếu người dùng chưa xác thực theo cách mà vai trò chấp nhận

Ba trường đầu tiên là bắt buộc đối với mọi vai trò mới được tạo

Ví dụ: hãy tạo một vai trò có tên là

sudo systemctl restart mongod.service

003 cung cấp quyền truy cập chỉ đọc vào cơ sở dữ liệu

sudo systemctl restart mongod.service

004

sudo systemctl restart mongod.service

01

Chúng ta có thể diễn đạt vai trò tương tự (nhưng hạn chế hơn) bằng cách sử dụng trường

sudo systemctl restart mongod.service

098 thay vì vai trò

sudo systemctl restart mongod.service

022 bằng cách nhập

sudo systemctl restart mongod.service

02

Xem thông tin về vai trò tùy chỉnh

Như trước đây, bạn có thể nhận thông tin về vai trò của mình bằng phương pháp

sudo systemctl restart mongod.service

086

sudo systemctl restart mongod.service

03

Cấp đặc quyền bổ sung cho vai trò tùy chỉnh

Để cấp các đặc quyền bổ sung cho vai trò do người dùng xác định hiện có, bạn có thể sử dụng phương pháp

sudo systemctl restart mongod.service

008. Nó nhận một loạt các đặc quyền được xác định bởi các tài liệu có chứa một tài liệu

sudo systemctl restart mongod.service

099 và mảng

sudo systemctl restart mongod.service

000, giống như chúng ta đã thấy ở trên với

sudo systemctl restart mongod.service

095

Chẳng hạn, để thêm đặc quyền

sudo systemctl restart mongod.service

016 vào vai trò

sudo systemctl restart mongod.service

003, bạn có thể nhập

sudo systemctl restart mongod.service

04

Thu hồi đặc quyền từ vai trò tùy chỉnh

Nếu bạn đổi ý, bạn có thể sử dụng phương pháp

sudo systemctl restart mongod.service

014 để xóa tác vụ

sudo systemctl restart mongod.service

016 bằng cùng định dạng

sudo systemctl restart mongod.service

05

Cấp vai trò cho vai trò tùy chỉnh

Để thêm các đặc quyền được xác định bởi một vai trò cho một vai trò khác, bạn có thể sử dụng phương pháp

sudo systemctl restart mongod.service

016. Phương thức nhận vai trò bạn muốn sửa đổi và một loạt vai trò bạn muốn thêm vào làm đối số

Để xác định rằng bạn muốn sử dụng vai trò

sudo systemctl restart mongod.service

022 cho vai trò

sudo systemctl restart mongod.service

003 sau tất cả, bạn có thể làm như vậy bằng cách nhập

sudo systemctl restart mongod.service

06

Thu hồi vai trò từ vai trò tùy chỉnh

Nếu bạn đổi ý lần nữa, bạn có thể thu hồi quyền truy cập vai trò bằng phương thức

sudo systemctl restart mongod.service

019, sử dụng cùng một cú pháp đối số

sudo systemctl restart mongod.service

07

Thay thế các giá trị của vai trò tùy chỉnh

Để xác định lại các đặc điểm của vai trò do người dùng xác định, bạn có thể sử dụng lệnh

sudo systemctl restart mongod.service

020. Nó hoạt động bằng cách thay thế các trường mà nó chỉ định thay vì nối thêm hoặc cắt bớt chúng. Vì lý do này, bạn nên cẩn thận khi đưa ra lệnh để không vô tình ghi đè lên thông tin quan trọng

Cú pháp của lệnh

sudo systemctl restart mongod.service

020 liên quan đến việc chuyển tên vai trò làm đối số đầu tiên và tài liệu chỉ định trường hoặc các trường bạn muốn thay thế làm đối số thứ hai. Các trường có thể được thay thế bao gồm mảng

sudo systemctl restart mongod.service

098, mảng

sudo systemctl restart mongod.service

001 và mảng

sudo systemctl restart mongod.service

002. Ít nhất một trong số này phải được đưa vào tài liệu

Ví dụ: sau khi cuối cùng chúng tôi đã quyết định rằng chúng tôi muốn vai trò

sudo systemctl restart mongod.service

003 sử dụng vai trò

sudo systemctl restart mongod.service

022 trên cơ sở dữ liệu

sudo systemctl restart mongod.service

004, chúng tôi có thể muốn xác định lại các mảng vai trò và đặc quyền của vai trò để xóa mọi đặc quyền bổ sung đã bị bỏ lại sau quá trình thử nghiệm của chúng tôi. Bạn có thể làm điều này bằng cách cập nhật vai trò với thông tin mới mà bạn muốn đặt

sudo systemctl restart mongod.service

08

Xóa vai trò do người dùng xác định

Bạn có thể xóa các vai trò không cần thiết bằng phương pháp

sudo systemctl restart mongod.service

028

Để xóa một vai trò, chỉ cần chuyển tên của vai trò đó cho phương thức

sudo systemctl restart mongod.service

09

Vai trò sẽ bị xóa khỏi hệ thống và mọi đặc quyền được cấp cho người dùng theo vai trò đó sẽ không thể truy cập được nữa

Sự kết luận

Trong bài viết này, chúng tôi đã đề cập rất nhiều về cách MongoDB triển khai kiểm soát truy cập và quản lý đặc quyền. Chúng tôi đã xem xét nền tảng khái niệm của hệ thống, xem các vai trò, hành động và tài nguyên có sẵn để quản trị viên quản lý, sau đó tìm hiểu về cách sử dụng hệ thống vai trò để định cấu hình ủy quyền trên toàn hệ thống

Những kỹ năng này là cần thiết để cung cấp cho người dùng quyền truy cập vào các tài nguyên họ cần để hoàn thành các nhiệm vụ được yêu cầu trong khi hạn chế tiếp xúc với các phần không liên quan của hệ thống. Học cách xác định và tận dụng các vai trò giúp tăng khả năng cung cấp quyền kiểm soát truy cập chi tiết trên các hệ thống MongoDB mà bạn quản lý

LIÊN QUAN ĐẾN PRISMA. IO

Nếu bạn đang sử dụng MongoDB, hãy kiểm tra trình kết nối MongoDB của Prisma. Bạn có thể tự tin sử dụng Prisma Client để quản lý cơ sở dữ liệu MongoDB sản xuất

Để bắt đầu làm việc với MongoDB và Prisma, hãy xem hướng dẫn bắt đầu từ đầu của chúng tôi hoặc cách thêm vào một dự án hiện có

Prisma là bộ công cụ cơ sở dữ liệu mã nguồn mở dành cho Typescript và Node. js nhằm mục đích giúp các nhà phát triển ứng dụng làm việc hiệu quả và tự tin hơn khi làm việc với cơ sở dữ liệu

Câu hỏi thường gặp

Bạn có thể tạo người dùng chỉ đọc trong MongoDB không?

Có hai vai trò tích hợp cho người dùng chỉ đọc trong MongoDB. Người dùng có thể được gán cho vai trò

sudo systemctl restart mongod.service

022 hoặc vai trò

sudo systemctl restart mongod.service

035

sudo systemctl restart mongod.service

022 cung cấp khả năng đọc dữ liệu trên tất cả các bộ sưu tập ngoài hệ thống

sudo systemctl restart mongod.service

035 cung cấp các khả năng giống như

sudo systemctl restart mongod.service

022 ngoại trừ nó cũng cung cấp khả năng sử dụng hành động

sudo systemctl restart mongod.service

015 trên toàn bộ cụm

Vai trò giám sát cụm trong MongoDB là gì?

Vai trò

sudo systemctl restart mongod.service

099 cung cấp quyền truy cập chỉ đọc vào các công cụ giám sát, chẳng hạn như tác nhân giám sát MongoDB Cloud Manager và Ops Manager

Vai trò sao lưu trong MongoDB là gì?

Vai trò

sudo systemctl restart mongod.service

063 cung cấp các đặc quyền tối thiểu cần thiết để sao lưu dữ liệu. Vai trò này cung cấp đủ đặc quyền để sử dụng tác nhân dự phòng MongoDB Cloud và Ops Manager

Nó cũng có quyền chạy các hành động

sudo systemctl restart mongod.service

8 và

sudo systemctl restart mongod.service

00 trên các bộ sưu tập sao lưu trong cơ sở dữ liệu

sudo systemctl restart mongod.service

054 ,

sudo systemctl restart mongod.service

040 và

sudo systemctl restart mongod.service

26

Root trong MongoDB là gì?

Vai trò

sudo systemctl restart mongod.service

0 trong MongoDB cung cấp quyền truy cập vào tất cả các hoạt động và tài nguyên của các vai trò sau được kết hợp

  • sudo systemctl restart mongod.service

    040
  • sudo systemctl restart mongod.service

    061
  • sudo systemctl restart mongod.service

    5
  • sudo systemctl restart mongod.service

    058
  • sudo systemctl restart mongod.service

    080
  • sudo systemctl restart mongod.service

    063

Kiểm soát truy cập dựa trên vai trò (RBAC) trong MongoDB là gì?

MongoDB sử dụng RBAC để quản lý quyền truy cập vào hệ thống MongoDB. RBAC là một chiến lược bảo mật hạn chế các hoạt động được phép đối với người dùng dựa trên vai trò được chỉ định của họ