Lệnh quản lý người dùng của mongo DB chứa các lệnh liên quan đến người dùng. Chúng tôi có thể tạo, xóa và cập nhật người dùng bằng các Lệnh quản lý người dùng sau.
Các bài viết liên quan:
Lệnh MongoDB createUser
Lệnh MongoDB createUser tạo một người dùng mới cho cơ sở dữ liệu từ nơi chúng ta chạy lệnh. Nếu người dùng đã tồn tại, nó sẽ trả về lỗi người dùng trùng lặp.
Cú pháp:
{ createUser: "<user_name>", pwd: "<cleartext password>" customData: { <any info.> }, roles: [ { role: "<role>", db: "<database>" } | "<role>", ... ], writeConcern: { <write concern> }, authenticationRestrictions: [ { clientSource: [ "<IP|CIDR range>", ... ], serverAddress: [ "<IP|CIDR range>", ... ] }, ... ], mechanisms: [ "<scram-mechanism>", ...], digestPassword: <boolean>
Lệnh createUser có trường sau:
Field | Type | Description |
createUser | string | Trường này chứa tên của người dùng mới. |
pwd | string | Trường này chứa mật khẩu của người dùng. Giá trị có thể là mật khẩu của người dùng trong chuỗi cleartext hoặc passwordPrompt () để nhắc nhập mật khẩu của người dùng. |
customData | document | Trường này chứa dữ liệu mà quản trị viên muốn liên kết với người dùng cụ thể. |
roles | array | Trường cấp bất kỳ vai trò nào cho người dùng. |
digestPassword | boolean | Chỉ ra rằng nó là một máy chủ hoặc một máy khách sử dụng mật khẩu. |
writeConcern | document | Trường này chứa mối quan tâm ghi cho hoạt động tạo. |
authentication Restrictions | array | Nó thực thi các quy tắc xác thực trên người dùng đã tạo. Nó cung cấp danh sách các địa chỉ IP và dải CIDR mà từ đó người dùng được phép kết nối. |
mechanism | array | Trường này chỉ định cơ chế SCRAM. Các giá trị SCRAM hợp lệ là SCRAM-SHA-1 và SCRAM-SHA-256. |
Ví dụ:
db.getSiblingDB("student").runCommand( { createUser: "admin@test", pwd: passwordPrompt(), customData: { empId: 101 }, roles: [ { role: "clusterAdmin", db: "admin" }, { role: "readAnyDatabase", db: "admin" }, "readWrite" ], writeConcern: { w: "majority" , wtimeout: 5000 } } )
Ví dụ trên tạo một người dùng admin @ test trên cơ sở dữ liệu sinh viên. Lệnh này cung cấp cho admin @ test các vai trò clusterAdmin và readAnyDatabase trên cơ sở dữ liệu quản trị và vai trò readwrite trên cơ sở dữ liệu của sinh viên.
Lệnh MongoDB dropUser
Lệnh MongoDB dropUser xóa người dùng khỏi cơ sở dữ liệu mà chúng ta đang chạy lệnh.
Cú pháp:
{ dropUser: "<user>", writeConcern: { <write concern> } }
Field | Type | Description |
dropUser | string | Trường dropUser chứa tên của người dùng mà bạn muốn xóa. |
writeConcern | document | Trường này chứa mức quan tâm ghi cho thao tác loại bỏ. |
Ví dụ:
{ dropUser: "<user>", writeConcern: { <write concern> } }
Lệnh MongoDB updateUser
Lệnh MongoDB updateUser cập nhật chi tiết người dùng trong cơ sở dữ liệu mà chúng tôi chạy lệnh. Nó sẽ thay thế hoàn toàn các giá trị của trường trước đó khi chúng ta sử dụng lệnh, bao gồm các vai trò được gán và mảng xác thực.
Cú pháp:
{ updateUser: "<user_name>", pwd: "<cleartext password>" customData: { <any information> }, roles: [ { role: "<role>", db: "<database>" } | "<role>", ... ], authenticationRestrictions: [ { clientSource: ["<IP>" | "<CIDR range>", ...], serverAddress: ["<IP>", | "<CIDR range>", ...] }, ... ], mechanisms: [ "<scram-mechanism>", ... ], digestPassword: <boolean>, writeConcern: { <write concern> } }
Field | Type | Description |
updateUser | string | Nó chứa tên của người dùng mà chúng ta cần cập nhật. |
pwd | string | Nó chứa mật khẩu của người dùng hoặc bạn có thể sử dụng dấu nhắc mật khẩu để nhắc nhập mật khẩu. |
customData | document | Trường này chứa dữ liệu mà quản trị viên muốn cập nhật cho người dùng cụ thể. |
roles | array | Trường này cấp một vai trò cho người dùng. |
digestPassword | boolean | Nó chỉ ra, nếu máy chủ hoặc máy khách sẽ thông báo mật khẩu. |
writeConcern | document | Trường này chứa mối quan tâm ghi cho hoạt động tạo. |
authentication Restrictions | array | Nó thực thi các quy tắc xác thực trên người dùng đã tạo. Nó cung cấp danh sách các địa chỉ IP và dải CIDR mà từ đó người dùng được phép kết nối. |
mechanism | array | Trường này chỉ định cơ chế SCRAM. Các giá trị SCRAM hợp lệ là SCRAM-SHA-1 và SCRAM-SHA-256. |
Ví dụ:
{ "_id" : "products.appClient01", "userId" : UUID("c5d88855-3f1e-46cb-9c8b-269bef957986"), // Starting in MongoDB 4.0.9 "user" : "appClient01", "db" : "products", "customData" : { "empID" : "12345", "badge" : "9156" }, "roles" : [ { "role" : "readWrite", "db" : "products" }, { "role" : "read", "db" : "inventory" } ], "mechanisms" : [ "SCRAM-SHA-1", "SCRAM-SHA-256" ] }
Lệnh người dùng cập nhật sau thay thế hoàn toàn dữ liệu vai trò và dữ liệu tùy chỉnh của người dùng:
use products db.runCommand( { updateUser : "appClient01", customData : { employeeId : "0x3039" }, roles : [ { role : "read", db : "assets" } ] } )