Hướng dẫn mongodb default username password - mongodb mật khẩu tên người dùng mặc định

Ngoài những gì @Camilo Silva đã đề cập, nếu bạn muốn cung cấp quyền truy cập miễn phí để tạo cơ sở dữ liệu, đọc, viết cơ sở dữ liệu, v.v., nhưng bạn không muốn tạo vai trò gốc, bạn có thể thay đổi bước thứ 3 với mục sau:

Show
use admin
db.createUser(
  {
    user: "myUserAdmin",
    pwd: "abc123",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" }, 
             { role: "dbAdminAnyDatabase", db: "admin" }, 
             { role: "readWriteAnyDatabase", db: "admin" } ]
  }
)

Nếu bạn đã tạo người dùng, bạn có thể cập nhật người dùng như sau:

Đăng nhập đầu tiên:

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"

Các quyền thêm:

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)

Người dùng xác thực với MongoDB bằng cơ chế xác thực bên ngoài, chẳng hạn như Kerberos, phải được tạo trong cơ sở dữ liệu

db.foo.insertOne( { x: 1, y: 1 } )

2, cho phép

db.foo.insertOne( { x: 1, y: 1 } )

3 hoặc

db.foo.insertOne( { x: 1, y: 1 } )

4 để tham khảo nguồn bên ngoài để xác thực.MongoDB Manual

Để sử dụng các phiên khách hàng và đảm bảo tính nhất quán nhân quả với người dùng xác thực

db.foo.insertOne( { x: 1, y: 1 } )

2 (người dùng Kerberos, LDAP hoặc X.509), tên người dùng không thể lớn hơn 10k byte.

  • Đối với xác thực Kerberos, bạn phải thêm Hiệu trưởng Kerberos làm tên người dùng. Bạn không cần chỉ định mật khẩu.
  • Hoạt động sau đây bổ sung hiệu trưởng Kerberos

    db.foo.insertOne( { x: 1, y: 1 } )

    6 với quyền truy cập chỉ đọc vào cơ sở dữ liệu

    db.foo.insertOne( { x: 1, y: 1 } )

    7:
  • Người dùng xác thực với MongoDB bằng cơ chế xác thực bên ngoài, chẳng hạn như LDAP, phải được tạo trong cơ sở dữ liệu

    db.foo.insertOne( { x: 1, y: 1 } )

    2, cho phép

    db.foo.insertOne( { x: 1, y: 1 } )

    3 hoặc

    db.foo.insertOne( { x: 1, y: 1 } )

    4 tham khảo ý kiến ​​của một nguồn bên ngoài để xác thực.
  • Để xác thực LDAP, bạn phải chỉ định tên người dùng. Bạn không cần chỉ định mật khẩu, vì điều đó được xử lý bởi dịch vụ LDAP.
  • Hoạt động sau đây thêm người dùng
    use admin
    db.grantRolesToUser(
       "myUserAdmin",
       [ { role: "userAdminAnyDatabase", db: "admin" }, 
         { role: "dbAdminAnyDatabase", db: "admin" }, 
         { role: "readWriteAnyDatabase", db: "admin" } ]
    )
    
    3 có quyền truy cập chỉ đọc vào cơ sở dữ liệu

    db.foo.insertOne( { x: 1, y: 1 } )

    7:
  • Người dùng xác thực với MongoDB bằng cơ chế xác thực bên ngoài, chẳng hạn như xác thực chứng chỉ máy khách X.509, phải được tạo trong cơ sở dữ liệu

    db.foo.insertOne( { x: 1, y: 1 } )

    2, cho phép

    db.foo.insertOne( { x: 1, y: 1 } )

    3 hoặc

    db.foo.insertOne( { x: 1, y: 1 } )

    4 tham khảo nguồn bên ngoài để xác thực.
  • Đối với xác thực chứng chỉ máy khách X.509, bạn phải thêm giá trị của
    use reporting
    db.createUser(
    {
    user: "reportsUser",
    pwd: passwordPrompt(), // or cleartext password
    roles: [
    { role: "read", db: "reporting" },
    { role: "read", db: "products" },
    { role: "read", db: "sales" },
    { role: "readWrite", db: "accounts" }
    ]
    }
    )
    8 từ chứng chỉ máy khách làm người dùng MongoDB. Mỗi chứng chỉ máy khách X.509 duy nhất tương ứng với một người dùng MongoDB duy nhất. Bạn không cần chỉ định mật khẩu.
  • Hoạt động sau đây bổ sung người dùng chứng chỉ máy khách
    use reporting
    db.createUser(
    {
    user: "reportsUser",
    pwd: passwordPrompt(), // or cleartext password
    roles: [
    { role: "read", db: "reporting" },
    { role: "read", db: "products" },
    { role: "read", db: "sales" },
    { role: "readWrite", db: "accounts" }
    ]
    }
    )
    9 có quyền truy cập chỉ đọc vào cơ sở dữ liệu

    db.foo.insertOne( { x: 1, y: 1 } )

    7.
  • Để quản lý người dùng, gán vai trò và tạo vai trò tùy chỉnh, xem Quản lý người dùng và vai trò.
  • Tài liệu về nhà → Hướng dẫn sử dụng MongoDB
  • Trên trang này
  • Điều kiện tiên quyết

Thủ tục

Kết nối và xác thực

Để có thể tạo người dùng, bạn cần phải:

  • Bật điều khiển truy cập

  • Tạo quản trị viên người dùng

Đối với việc tạo người dùng thường xuyên, bạn phải có các quyền sau:

  • Để tạo người dùng mới trong cơ sở dữ liệu, bạn phải có

    mongo --port 27017 -u "myUserAdmin" -p "abc123" \
      --authenticationDatabase "admin"
    
    1Action trên tài nguyên cơ sở dữ liệu đó.

  • Để cấp vai trò cho người dùng, bạn phải có hành động

    mongo --port 27017 -u "myUserAdmin" -p "abc123" \
      --authenticationDatabase "admin"
    
    2 trên cơ sở dữ liệu của vai trò.

Vai trò tích hợp

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
3 và
mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
4 cung cấp các hành động
mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
1 và
mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
2 trên các tài nguyên tương ứng của chúng.

Ghi chú

Quy trình sau sử dụng xác thực Scram. Để biết thêm thông tin về các cơ chế xác thực khác, hãy xem các ví dụ bổ sung.Additional Examples.

Ghi chú

Quy trình sau sử dụng xác thực Scram. Để biết thêm thông tin về các cơ chế xác thực khác, hãy xem các ví dụ bổ sung.Additional Examples.

Bước sau sử dụng xác thực Scram. Để biết thêm thông tin về các cơ chế xác thực khác, hãy xem các ví dụ bổ sung.

Sau khi xác thực làm quản trị viên người dùng, hãy sử dụng phương thức

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
7 để tạo thêm người dùng. Bạn có thể gán bất kỳ vai trò tích hợp hoặc vai trò do người dùng xác định cho người dùng.

use test
db.createUser(
{
user: "myTester",
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)

Hoạt động sau đây thêm người dùng myTester vào cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9, người có vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 0 trong cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9 cũng như vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 2 trong cơ sở dữ liệu use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 3.

Mẹo

Phương thức

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 nhắc bạn nhập mật khẩu. Bạn cũng có thể chỉ định mật khẩu của mình trực tiếp dưới dạng chuỗi. Chúng tôi khuyên bạn nên sử dụng phương thức
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 để tránh hiển thị mật khẩu trên màn hình của bạn và có khả năng rò rỉ mật khẩu vào lịch sử shell của bạn.

Cơ sở dữ liệu nơi bạn tạo người dùng (trong ví dụ này,

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
9) là cơ sở dữ liệu xác thực của người dùng. Mặc dù người dùng xác thực vào cơ sở dữ liệu này, người dùng có thể có vai trò trong các cơ sở dữ liệu khác. Cơ sở dữ liệu xác thực của người dùng không giới hạn các đặc quyền của người dùng.
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7

Sau khi tạo người dùng bổ sung, thoát use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 7

Quan trọng

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7 session. Authenticating as a different user means the session has the privileges of both authenticated users. To switch between users exit and relaunch
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7

Không thể chuyển đổi giữa người dùng trong cùng một phiên

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7. Xác thực như một người dùng khác có nghĩa là phiên có đặc quyền của cả hai người dùng được xác thực. Để chuyển đổi giữa người dùng thoát và khởi chạy lại
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7
as
use test
db.createUser(
{
user: "myTester",
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
1, reconnect as myTester:

Sau khi thoát

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7 dưới dạng
use test
db.createUser(
{
user: "myTester",
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
1, kết nối lại là myTester:

db.foo.insertOne( { x: 1, y: 1 } )

Hoạt động sau đây thêm người dùng myTester vào cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9, người có vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 0 trong cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9 cũng như vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 2 trong cơ sở dữ liệu use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 3.

Mẹo

Phương thức

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 nhắc bạn nhập mật khẩu. Bạn cũng có thể chỉ định mật khẩu của mình trực tiếp dưới dạng chuỗi. Chúng tôi khuyên bạn nên sử dụng phương thức
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 để tránh hiển thị mật khẩu trên màn hình của bạn và có khả năng rò rỉ mật khẩu vào lịch sử shell của bạn.

Hoạt động sau đây thêm người dùng myTester vào cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9, người có vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 0 trong cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9 cũng như vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 2 trong cơ sở dữ liệu use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 3.

Mẹo

use reporting
db.createUser(
{
user: "reportsUser",
pwd: passwordPrompt(), // or cleartext password
roles: [
{ role: "read", db: "reporting" },
{ role: "read", db: "products" },
{ role: "read", db: "sales" },
{ role: "readWrite", db: "accounts" }
]
}
)

Phương thức

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 nhắc bạn nhập mật khẩu. Bạn cũng có thể chỉ định mật khẩu của mình trực tiếp dưới dạng chuỗi. Chúng tôi khuyên bạn nên sử dụng phương thức
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 để tránh hiển thị mật khẩu trên màn hình của bạn và có khả năng rò rỉ mật khẩu vào lịch sử shell của bạn.

Cơ sở dữ liệu nơi bạn tạo người dùng (trong ví dụ này,

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
9) là cơ sở dữ liệu xác thực của người dùng. Mặc dù người dùng xác thực vào cơ sở dữ liệu này, người dùng có thể có vai trò trong các cơ sở dữ liệu khác. Cơ sở dữ liệu xác thực của người dùng không giới hạn các đặc quyền của người dùng.

Sau khi tạo người dùng bổ sung, thoát

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7

Quan trọng

use $external
db.createUser(
{
user: "",
roles: [
{ role: "read", db: "records" }
]
}
)

Hoạt động sau đây thêm người dùng myTester vào cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9, người có vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 0 trong cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9 cũng như vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 2 trong cơ sở dữ liệu use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 3.

Mẹo

Phương thức

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 nhắc bạn nhập mật khẩu. Bạn cũng có thể chỉ định mật khẩu của mình trực tiếp dưới dạng chuỗi. Chúng tôi khuyên bạn nên sử dụng phương thức
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 để tránh hiển thị mật khẩu trên màn hình của bạn và có khả năng rò rỉ mật khẩu vào lịch sử shell của bạn.

Cơ sở dữ liệu nơi bạn tạo người dùng (trong ví dụ này,

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
9) là cơ sở dữ liệu xác thực của người dùng. Mặc dù người dùng xác thực vào cơ sở dữ liệu này, người dùng có thể có vai trò trong các cơ sở dữ liệu khác. Cơ sở dữ liệu xác thực của người dùng không giới hạn các đặc quyền của người dùng.

Sau khi tạo người dùng bổ sung, thoát

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7

Quan trọng

use $external
db.createUser(
{
user: "reporting",
roles: [
{ role: "read", db: "records" }
]
}
)

Hoạt động sau đây thêm người dùng myTester vào cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9, người có vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 0 trong cơ sở dữ liệu mongo --port 27017 -u "myUserAdmin" -p "abc123" \ --authenticationDatabase "admin" 9 cũng như vai trò use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 2 trong cơ sở dữ liệu use admin db.grantRolesToUser( "myUserAdmin", [ { role: "userAdminAnyDatabase", db: "admin" }, { role: "dbAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" } ] ) 3.

Mẹo

Phương thức

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 nhắc bạn nhập mật khẩu. Bạn cũng có thể chỉ định mật khẩu của mình trực tiếp dưới dạng chuỗi. Chúng tôi khuyên bạn nên sử dụng phương thức
use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
4 để tránh hiển thị mật khẩu trên màn hình của bạn và có khả năng rò rỉ mật khẩu vào lịch sử shell của bạn.

Cơ sở dữ liệu nơi bạn tạo người dùng (trong ví dụ này,

mongo --port 27017 -u "myUserAdmin" -p "abc123" \
  --authenticationDatabase "admin"
9) là cơ sở dữ liệu xác thực của người dùng. Mặc dù người dùng xác thực vào cơ sở dữ liệu này, người dùng có thể có vai trò trong các cơ sở dữ liệu khác. Cơ sở dữ liệu xác thực của người dùng không giới hạn các đặc quyền của người dùng.

Sau khi tạo người dùng bổ sung, thoát

use admin
db.grantRolesToUser(
   "myUserAdmin",
   [ { role: "userAdminAnyDatabase", db: "admin" }, 
     { role: "dbAdminAnyDatabase", db: "admin" }, 
     { role: "readWriteAnyDatabase", db: "admin" } ]
)
7

Hoạt động sau đây bổ sung người dùng chứng chỉ máy khách

use reporting
db.createUser(
{
user: "reportsUser",
pwd: passwordPrompt(), // or cleartext password
roles: [
{ role: "read", db: "reporting" },
{ role: "read", db: "products" },
{ role: "read", db: "sales" },
{ role: "readWrite", db: "accounts" }
]
}
)
9 có quyền truy cập chỉ đọc vào cơ sở dữ liệu

db.foo.insertOne( { x: 1, y: 1 } )

7.

use $external
db.createUser(
{
user: "CN=myName,OU=myOrgUnit,O=myOrg,L=myLocality,ST=myState,C=myCountry",
roles: [
{ role: "read", db: "records" }
]
}
)

Mẹo

Xem thêm:

Để quản lý người dùng, gán vai trò và tạo vai trò tùy chỉnh, xem Quản lý người dùng và vai trò.