Để xóa một tài liệu, chúng tôi sử dụng phương pháp switched to db admin
18Tham số đầu tiên của phương thức switched to db admin
18 là đối tượng truy vấn xác định tài liệu nào cần xóaGhi chú. Nếu truy vấn tìm thấy nhiều tài liệu, thì chỉ lần xuất hiện đầu tiên bị xóa Thí dụXóa tài liệu có địa chỉ "Núi 21" pymongo nhập khẩu myclient = pymongo. MongoClient("mongodb. //máy chủ cục bộ. 27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "địa chỉ". "Núi 21" } nấm mốc. xóa_one (truy vấn của tôi) Chạy ví dụ »
Xóa nhiều tài liệuĐể xóa nhiều tài liệu, hãy sử dụng phương pháp switched to db admin
20Tham số đầu tiên của phương thức switched to db admin
20 là đối tượng truy vấn xác định tài liệu nào cần xóaThí dụXóa tất cả các tài liệu có địa chỉ bắt đầu bằng chữ S pymongo nhập khẩu myclient = pymongo. MongoClient("mongodb. //máy chủ cục bộ. 27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "địa chỉ". {"$regex". "^S"} } x = mycol. xóa_many(myquery) in(x. đã xóa_count," tài liệu đã bị xóa. ") Chạy ví dụ »
Xóa tất cả tài liệu trong một bộ sưu tậpĐể xóa tất cả các tài liệu trong một bộ sưu tập, hãy chuyển một đối tượng truy vấn trống cho phương thức switched to db admin
20Thí dụXóa tất cả các tài liệu trong bộ sưu tập "khách hàng" pymongo nhập khẩu myclient = pymongo. MongoClient("mongodb. //máy chủ cục bộ. 27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] x = mycol. xóa_nhiều({}) in(x. đã xóa_count," tài liệu đã bị xóa. ") Chạy ví dụ »
Phương thức switched to db admin
23 trả về một đối tượng chứa thông tin về cách thực thi ảnh hưởng đến cơ sở dữ liệuHầu hết thông tin không quan trọng để hiểu, nhưng một đối tượng bên trong đối tượng được gọi là "kết quả" cho chúng tôi biết liệu quá trình thực thi có ổn không và có bao nhiêu tài liệu bị ảnh hưởng Quản lý người dùng và xác thực là một số nhiệm vụ quản trị quan trọng nhất của việc quản lý máy chủ MongoDB. Bạn phải đảm bảo rằng máy chủ được định cấu hình để có thể xác định chính xác người dùng và ứng dụng của bạn và từ chối các kết nối hoặc hoạt động không thể xác thực chính xác Để quản lý các yêu cầu này, bạn phải có khả năng quyết định những người dùng mà máy chủ của bạn yêu cầu và tạo các tài khoản đó. Là một phần của quy trình này, bạn có thể đặt chi tiết xác thực để cho phép truy cập bên ngoài bằng danh tính mới Trong hướng dẫn này, chúng tôi sẽ hướng dẫn cách tạo, xem và xóa tài khoản người dùng. Chúng tôi sẽ giới thiệu cách thiết lập xác thực cho tài khoản của bạn và cách cập nhật thông tin đăng nhập khi bạn cần thay đổi mật khẩu người dùng của mình 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 Các lệnh và phương thức chúng ta sẽ sử dụngĐể tạo, sửa đổi và xóa người dùng trong MongoDB và định cấu hình xác thực, các phương thức cốt lõi bạn cần là switched to db admin
5. tạo tài khoản người dùng MongoDB mới
switched to db admin
6. cập nhật thông tin chi tiết của tài khoản người dùng
switched to db admin
7. thay đổi mật khẩu được sử dụng bởi tài khoản người dùng
switched to db admin
8. xóa tài khoản người dùng MongoDB
Ngoài ra, lệnh cơ sở dữ liệu sau đây rất hữu ích để tìm thông tin về người dùng trên hệ thống đặc quyền bắt buộcĐể thực hiện các lệnh trên, bạn cần đăng nhập vào MongoDB bằng một tài khoản với một số hành động đặc quyền khác nhau. Các đặc quyền cụ thể mà bạn yêu cầu tùy thuộc vào các lệnh bạn cần sử dụng Để nhận thông tin về những người dùng khác, người dùng hiện tại của bạn phải bật hành động đặc quyền sau Để tạo người dùng mới, người dùng hiện tại của bạn phải bật các hành động đặc quyền sau - Hành động đặc quyền
db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
1
- Hành động đặc quyền
db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
2
Để thay đổi mật khẩu hoặc chi tiết tài khoản của người dùng, bạn có thể cần các đặc quyền sau - Hành động đặc quyền
db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
3 để thay đổi mật khẩu tài khoản của chính bạn
- Hành động đặc quyền của
db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
4 để thay đổi dữ liệu tùy chỉnh của tài khoản của bạn
- Hành động đặc quyền của
db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
5 để thay đổi mật khẩu của người dùng khác
- Hành động đặc quyền của
db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
6 để thay đổi dữ liệu tùy chỉnh của người dùng khác
Chúng tôi sẽ không đề cập đến quản lý vai trò trong hướng dẫn này, vì vậy các hành động đặc quyền db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
2 và db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
8 là không bắt buộcĐể xóa tài khoản người dùng, người dùng hiện tại của bạn phải bật hành động đặc quyền sau
Hiểu cách MongoDB triển khai người dùng và xác thựcTrước khi chúng tôi bắt đầu tạo và quản lý tài khoản, sẽ rất hữu ích nếu bạn dành chút thời gian để làm quen với cách MongoDB định nghĩa và lưu trữ thông tin này Trong MongoDB, tài khoản người dùng là sự kết hợp của tên người dùng tài khoản cùng với cơ sở dữ liệu xác thực cụ thể. Cơ sở dữ liệu xác thực chỉ đơn giản là cơ sở dữ liệu nơi người dùng được xác định và không bao hàm giới hạn về phạm vi hoặc quyền. Cơ sở dữ liệu xác thực là cơ sở dữ liệu thông thường được sử dụng để quản lý dữ liệu khác và không phải là cơ sở dữ liệu chuyên dụng, đặc biệt Tên tài khoản người dùng phải là duy nhất trong cơ sở dữ liệu xác thực của nó. Tuy nhiên, cùng một tên người dùng có thể được sử dụng lại với cơ sở dữ liệu xác thực khác để tạo tài khoản người dùng mới, riêng biệt Do thiết kế này, một tài khoản chỉ có thể được xác định chính xác bằng cách bao gồm tên người dùng và cơ sở dữ liệu xác thực. Để xác thực tài khoản, người ta cũng cần cung cấp thông tin đăng nhập được liên kết với tài khoản. Đây thường là mật khẩu, nhưng cũng có thể là chứng chỉ Làm thế nào để bạn tạo người dùng?Bây giờ chúng ta đã xem cách MongoDB khái niệm hóa tài khoản người dùng, chúng ta có thể thảo luận về cách tạo người dùng mới. Hãy nhớ đăng nhập vào máy chủ MongoDB của bạn với người dùng có đặc quyền phù hợp để theo dõi Để tạo người dùng mới, trước tiên bạn phải chuyển sang cơ sở dữ liệu mà bạn muốn sử dụng làm cơ sở dữ liệu xác thực của người dùng mới Trước tiên, bạn có thể lấy danh sách các cơ sở dữ liệu đã được định cấu hình trên hệ thống của mình bằng cách nhập switched to db admin
5
switched to db admin
6Chuyển sang cơ sở dữ liệu mà người dùng sẽ được liên kết bằng cách sử dụng lệnh switched to db admin
70switched to db admin
8switched to db admin
Để tạo người dùng mới, bạn có thể sử dụng phương pháp switched to db admin
71 hoặc bạn có thể sử dụng lệnh cơ sở dữ liệu db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
1. Dù bằng cách nào, bạn sẽ cần chuyển tên người dùng (trường switched to db admin
73), mật khẩu (trường switched to db admin
74) và một mảng các vai trò mà người dùng sẽ được thêm vào (khóa switched to db admin
75) trong đối tượng switched to db admin
73Để tạo một người dùng mới có tên là switched to db admin
77 với mật khẩu được đặt thành switched to db admin
78 với một mảng vai trò trống bằng phương thức switched to db admin
71, bạn có thể nhậpdb.createUser({ user: "tom", pwd: "hellothere", roles: [] })
switched to db admin
7Hoạt động tương tự bằng cách sử dụng lệnh cơ sở dữ liệu db.createUser({ user: "tom", pwd: "hellothere", roles: [] })
1 sẽ như thế nàyswitched to db admin
2switched to db admin
7Hai tùy chọn khác nhau rất giống nhau, vì vậy chúng tôi sẽ chỉ hiển thị các phương thức cơ sở dữ liệu khi áp dụng trong tương lai. Tuy nhiên, nếu bạn thích cú pháp lệnh cơ sở dữ liệu hơn, bạn có thể tìm thấy từng lệnh liên quan trong tài liệu tham khảo lệnh MongoDB Trong các lệnh trên, chúng tôi đã xác định rõ ràng mật khẩu nội tuyến trong đối tượng switched to db admin
73. Để ngăn mật khẩu bị ghi lại và có thể truy xuất được, bạn có thể sử dụng phương thức switched to db admin
22 trong tài liệu switched to db admin
73 để MongoDB tương tác nhắc bạn nhập mật khẩu khi lệnh được chạy. Mật khẩu sẽ không hiển thị, vì vậy lịch sử lệnh của bạn sẽ sạch sẽswitched to db admin
7____38Hãy nhớ rằng mật khẩu sẽ vẫn được gửi đến máy chủ ở dạng văn bản thuần túy nếu bạn không bật TLS/SSL Làm thế nào để bạn hiển thị người dùng hiện tại?Tiếp theo, chúng ta hãy xem cách tìm thông tin về người dùng hiện có Để trả về nhiều người dùng, bạn có thể sử dụng phương thức switched to db admin
24 để hiển thị tất cả người dùng trong cơ sở dữ liệu hiện tại. Trước tiên, hãy chuyển sang cơ sở dữ liệu mà bạn muốn truy vấnswitched to db admin
8Tiếp theo, sử dụng phương thức switched to db admin
24 để trả về tất cả người dùng được liên kết với cơ sở dữ liệu hiện tạiswitched to db admin
61switched to db admin
62Để hiển thị thêm thông tin xác thực của mỗi người dùng, hãy chuyển một đối tượng cho phương thức bằng khóa switched to db admin
26 đến switched to db admin
27switched to db admin
63switched to db admin
64Để truy vấn người dùng phù hợp với các tiêu chí nhất định, bạn có thể chuyển một đối tượng xác định khóa switched to db admin
28 xác định điều kiện phù hợpChẳng hạn, để lấy thông tin về tất cả người dùng trong cơ sở dữ liệu hiện tại có vai trò switched to db admin
29, bạn có thể nhậpswitched to db admin
65switched to db admin
66Để có được một người dùng cụ thể, bạn có thể sử dụng phương pháp switched to db admin
70 thay thế. Điều này hoạt động giống như phương thức switched to db admin
24, nhưng trả về một người dùng. Thay vì truyền một đối tượng cho phương thức, bạn truyền một chuỗi chứa tên người dùng mà bạn muốn truy xuấtswitched to db admin
67switched to db admin
68Bạn có thể tùy chọn thêm một đối tượng switched to db admin
72 bổ sung cho phép bạn chỉ định thông tin bổ sung mà bạn muốn bằng cách đặt các phím sau thành switched to db admin
27
switched to db admin
26. hiển thị thông tin xác thực ngoài đầu ra thông thường
switched to db admin
75. hiển thị thông tin đặc quyền ngoài đầu ra thông thường
switched to db admin
76. hiển thị các hạn chế xác thực trên tài khoản ngoài đầu ra thông thường
Ví dụ: bạn có thể yêu cầu MongoDB cung cấp cho bạn tất cả thông tin trên bằng cách nhập switched to db admin
69switched to db admin
80
Làm cách nào để bạn thay đổi mật khẩu cho người dùng MongoDB?Để thay đổi mật khẩu của người dùng, bạn có thể sử dụng phương pháp switched to db admin
77. Một lần nữa, bạn phải chuyển sang cơ sở dữ liệu xác thực của người dùng trước khi thực hiện lệnhPhương thức switched to db admin
77 có hai đối số. tên người dùng của tài khoản bạn muốn thay đổi và mật khẩu mới cho tài khoảnVí dụ: để thay đổi mật khẩu cho người dùng switched to db admin
77 được xác thực bằng cơ sở dữ liệu switched to db admin
70 thành switched to db admin
71, bạn có thể nhậpswitched to db admin
81Cũng giống như phương thức switched to db admin
71, bạn có thể sử dụng phương thức switched to db admin
22 cho đối số thứ hai thay vì cung cấp mật khẩu nội tuyến. MongoDB sẽ nhắc bạn nhập mật khẩu khi lệnh được thực thiswitched to db admin
82switched to db admin
83
Làm cách nào để bạn thay đổi các chi tiết tài khoản người dùng khác?Để thay đổi thông tin khác được liên kết với tài khoản người dùng, bạn có thể sử dụng phương pháp switched to db admin
74. Đảm bảo bạn chuyển sang cơ sở dữ liệu xác thực của người dùng trước khi cập nhật thông tin chi tiết của họPhương thức switched to db admin
74 yêu cầu bạn chỉ định tên người dùng và sau đó cung cấp một đối tượng chứa dữ liệu bạn muốn cập nhật. Bất kỳ trường nào bạn chọn cập nhật sẽ được thay thế hoàn toàn bằng thông tin mới, vì vậy hãy đảm bảo bao gồm dữ liệu gốc cũng như dữ liệu mới trong đối tượng của bạn nếu bạn chỉ hy vọng thêm thông tin mớiĐối tượng mà bạn đưa vào lệnh có thông tin thay đổi có thể chứa nhiều trường khác nhau. Hãy lướt qua chúng
switched to db admin
76. Bất kỳ dữ liệu tùy ý nào được liên kết với tài khoản người dùng
switched to db admin
75. Các vai trò mà người dùng được cấp. Thường thì tốt hơn là sử dụng các phương pháp switched to db admin
78 và switched to db admin
79 để kiểm soát tư cách thành viên của vai trò hơn là cập nhật bằng khóa này vì bạn có thể thêm và xóa từng vai trò
switched to db admin
74. Mật khẩu của người dùng. Sử dụng phương pháp switched to db admin
81 thường dễ dàng hơn nếu đó là trường duy nhất cần được cập nhật
switched to db admin
82. Chỉ định các hạn chế cho tài khoản có thể giới hạn địa chỉ IP mà người dùng có thể kết nối từ hoặc đến. Giá trị của khóa này là một đối tượng hoặc mảng xác định switched to db admin
83 và hoặc switched to db admin
84, chứa các mảng chỉ định phạm vi hoặc địa chỉ IP hợp lệ. Tìm hiểu thêm trong tài liệu MongoDB về các hạn chế xác thực
switched to db admin
85. Các cơ chế xác thực cụ thể được sử dụng cho thông tin xác thực. Có thể được đặt thành một hoặc cả hai switched to db admin
86 hoặc switched to db admin
87, nhưng chỉ có thể được thay đổi thành một tập hợp con của các cơ chế hiện tại nếu mật khẩu mới hiện không được cung cấp
switched to db admin
88. Chỉ định thành phần nào xử lý mật khẩu của người dùng. Có thể là switched to db admin
89 (mặc định) hoặc switched to db admin
600
Ví dụ: chúng tôi có thể cập nhật tài khoản switched to db admin
77 xác thực dựa trên cơ sở dữ liệu switched to db admin
70 để chỉ có thể đăng nhập từ cùng một máy tính lưu trữ chính máy chủ đó bằng cách thay đổi trường switched to db admin
82switched to db admin
84Bây giờ, nếu bạn yêu cầu MongoDB hiển thị cho bạn thông tin liên quan về người dùng, nó sẽ hiển thị các hạn chế bổ sung cho tài khoản switched to db admin
85switched to db admin
86Để hủy bỏ những hạn chế đó, chúng ta có thể chạy lại lệnh với một mảng trống switched to db admin
87
Làm cách nào để xóa người dùng MongoDB?Để xóa tài khoản người dùng MongoDB, bạn có thể sử dụng phương pháp switched to db admin
604. Đảm bảo kết nối với cơ sở dữ liệu xác thực của người dùng trước khi xóa chúngĐể thực thi phương thức switched to db admin
604, bạn cần cung cấp tên của người dùng mà bạn muốn xóaswitched to db admin
88Sau khi xóa thành công, MongoDB sẽ trả về switched to db admin
27switched to db admin
89Nếu tài khoản không tồn tại trong cơ sở dữ liệu hiện tại, thay vào đó, nó sẽ trả về switched to db admin
607
Phần kết luậnCấu hình xác thực và quản lý người dùng của MongoDB cho phép bạn kiểm soát ai có thể kết nối với máy chủ của bạn và thuộc tính người dùng của họ là gì. Trong bài viết sau, chúng tôi sẽ đề cập đến cách hạn chế mức truy cập mà người dùng có bằng cách xử lý phần ủy quyền của quản lý 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 Câu hỏi thường gặpLàm cách nào để bạn liệt kê những người dùng hiện có trong MongoDB? Để liệt kê những người dùng hiện có trong MongoDB, bạn có thể sử dụng phương thức switched to db admin
24 để hiển thị tất cả người dùng trong cơ sở dữ liệu hiện tạiCú pháp sẽ giống như switched to db admin
0Để biết thêm chi tiết về switched to db admin
24Làm cách nào để bạn tạo người dùng quản trị cơ sở dữ liệu trong MongoDB? Để tạo người dùng quản trị cơ sở dữ liệu trong MongoDB, bạn sẽ muốn sử dụng phương thức switched to db admin
71 trong cơ sở dữ liệu switched to db admin
70Phần sau minh họa cú pháp sử dụng để tạo quản trị viên cơ sở dữ liệu switched to db admin
1Làm cách nào để bỏ người dùng trong MongoDB? Để xóa người dùng MongoDB, bạn có thể sử dụng phương pháp switched to db admin
604. Điều này cần được thực hiện trong cơ sở dữ liệu switched to db admin
70 và cú pháp sẽ như thế nàyswitched to db admin
2Làm cách nào để kiểm tra xem người dùng cơ sở dữ liệu có tồn tại trong MongoDB không? Để lấy danh sách tất cả người dùng hiện có trong MongoDB, bạn có thể sử dụng phương thức switched to db admin
24Cú pháp cơ bản sẽ giống như switched to db admin
0Làm cách nào bạn có thể kiểm tra đặc quyền của người dùng trong MongoDB? Để truy vấn một người dùng cụ thể, bạn có thể sử dụng phương pháp switched to db admin
70 với switched to db admin
75 switched to db admin
617 được đặt thành switched to db admin
27
Làm cách nào để xóa tên người dùng và mật khẩu trong MongoDB?
Để tạo, sửa đổi và xóa người dùng trong MongoDB và định cấu hình xác thực, các phương thức cốt lõi bạn cần là. . tạo người dùng. tạo tài khoản người dùng MongoDB mới người dùng cập nhật. cập nhật thông tin chi tiết của tài khoản người dùng thay đổi mật khẩu người dùng. thay đổi mật khẩu được sử dụng bởi tài khoản người dùng dropUser. xóa tài khoản người dùng MongoDB
Lệnh nào dùng để xóa trong MongoDB?
Để xóa một tài liệu, hãy sử dụng db. bộ sưu tập. deleteOne() .
Làm cách nào để liệt kê người dùng trong MongoDB?
Để liệt kê tất cả người dùng trong Mongo shell, hãy sử dụng phương thức getUsers() hoặc lệnh show. . Trường hợp 1 - Sử dụng getUsers() Cú pháp như sau - db. getUsers(); Trường hợp 2 - Sử dụng lệnh show. Cú pháp như sau -. Trường hợp 1 − Truy vấn đầu tiên như sau − > db. . Trường hợp 2 − Truy vấn thứ hai như sau − > hiển thị người dùng;
Làm cách nào để xóa cơ sở dữ liệu MongoDB?
dropDatabase() — Hướng dẫn sử dụng MongoDB. . Chạy lệnh dropDatabase trên mongos Khi lệnh hoàn thành thành công, hãy chạy lệnh dropDatabase một lần nữa trên mongos Sử dụng lệnh flushRouterConfig trên tất cả các phiên bản mongos trước khi đọc hoặc ghi vào cơ sở dữ liệu đó
|