Thư mục hoạt động MongoDB

Việc tích hợp Azure Active Directory và MongoDB không thể dễ dàng hơn với các trình kết nối Azure Active Directory và MongoDB mạnh mẽ của Nền tảng khay, có thể kết nối với bất kỳ dịch vụ nào mà không cần các công cụ tích hợp riêng biệt

Lái thử Nền tảng khay Hướng dẫn tùy chỉnh

Các ứng dụng luôn bật dựa trên khả năng chuyển đổi dự phòng tự động và truy cập dữ liệu theo thời gian thực. CData Sync tích hợp dữ liệu Active Directory trực tiếp vào phiên bản MongoDB của bạn, cho phép bạn hợp nhất tất cả dữ liệu của mình vào một vị trí duy nhất để lưu trữ, báo cáo, phân tích, học máy, trí tuệ nhân tạo, v.v.

Show

Định cấu hình MongoDB làm Điểm đến sao chép

Sử dụng CData Sync, bạn có thể sao chép dữ liệu Active Directory sang MongoDB. Để thêm đích sao chép, hãy điều hướng đến tab Kết nối

  1. Nhấp vào Thêm kết nối
  2. Chọn MongoDB làm đích.
  3. Nhập các thuộc tính kết nối cần thiết. Để kết nối với MongoDB, hãy đặt như sau
    • Người phục vụ. Đặt tên này thành tên hoặc địa chỉ của máy chủ nơi phiên bản MongoDB của bạn đang chạy. Bạn có thể chỉ định cổng tại đây hoặc trong Cổng
    • cơ sở dữ liệu. Đặt cái này thành cơ sở dữ liệu bạn muốn đọc và ghi vào

    Kết nối với CosmosDB bằng API MongoDB

    Để có được chuỗi kết nối cần thiết để kết nối với tài khoản Cosmos DB bằng API MongoDB, hãy đăng nhập vào Cổng Azure, chọn Azure Cosmos DB và chọn tài khoản của bạn. Trong phần Cài đặt, nhấp vào Chuỗi kết nối và đặt các giá trị sau

    • Người phục vụ. Đặt giá trị này thành giá trị Máy chủ, FQDN của máy chủ được cung cấp cho tài khoản của bạn. Bạn cũng có thể chỉ định cổng tại đây hoặc trong Cổng
    • Hải cảng. Đặt cái này vào cổng
    • cơ sở dữ liệu. Đặt cái này thành cơ sở dữ liệu bạn muốn đọc và ghi vào
    • Người sử dụng. Đặt cái này cho người dùng cơ sở dữ liệu
    • Mật khẩu. Đặt mật khẩu này thành mật khẩu của người dùng
  4. Nhấp vào Kiểm tra kết nối để đảm bảo rằng kết nối được định cấu hình đúng cách.
  5. Nhấp vào Lưu thay đổi

Định cấu hình kết nối Active Directory

Bạn có thể định cấu hình kết nối với Active Directory từ tab Kết nối. Để thêm kết nối vào tài khoản Active Directory của bạn, hãy điều hướng đến tab Kết nối

  1. Nhấp vào Thêm kết nối
  2. Chọn một nguồn (Active Directory)
  3. Định cấu hình thuộc tính kết nối

    Để thiết lập kết nối, hãy đặt các thuộc tính sau

    • Thông tin đăng nhập Người dùng và Mật khẩu hợp lệ (e. g. , Domain\BobF hoặc cn=Bob F,ou=Employees,dc=Domain)
    • Thông tin máy chủ, bao gồm IP hoặc tên máy chủ của Máy chủ, cũng như Cổng
    • cơ sởDN. Điều này sẽ giới hạn phạm vi tìm kiếm LDAP theo chiều cao của tên phân biệt được cung cấp

      Ghi chú. Chỉ định BaseDN hẹp có thể tăng hiệu suất đáng kể;

  4. Nhấp vào Kết nối để đảm bảo rằng kết nối được định cấu hình đúng cách
  5. Nhấp vào Lưu thay đổi

Định cấu hình truy vấn sao chép

CData Sync cho phép bạn kiểm soát sao chép bằng giao diện trỏ và nhấp và với các truy vấn SQL. Đối với mỗi bản sao bạn muốn định cấu hình, hãy điều hướng đến tab Công việc và nhấp vào Thêm công việc. Chọn Nguồn và Đích cho bản sao của bạn

Sao chép toàn bộ bảng

Để sao chép toàn bộ bảng, nhấp vào Thêm bảng trong phần Bảng, chọn (các) bảng bạn muốn sao chép và nhấp vào Thêm bảng đã chọn

Tùy chỉnh bản sao của bạn

Bạn có thể sử dụng tính năng Chuyển đổi để tùy chỉnh bản sao của mình. Tính năng Chuyển đổi cho phép bạn chỉ định cột nào sẽ sao chép, đổi tên cột tại đích và thậm chí thực hiện các thao tác trên dữ liệu nguồn trước khi sao chép. Để tùy chỉnh bản sao của bạn, hãy nhấp vào nút Chuyển đổi trong phần Bảng và tùy chỉnh bản sao.

Lên lịch sao chép của bạn

Trong phần Lịch biểu, bạn có thể lên lịch để công việc chạy tự động, định cấu hình công việc để chạy sau các khoảng thời gian đã chỉ định, từ 10 phút một lần đến một lần mỗi tháng

Khi bạn đã định cấu hình công việc sao chép, hãy nhấp vào Lưu thay đổi. Bạn có thể định cấu hình bất kỳ số lượng công việc nào để quản lý sao chép dữ liệu Active Directory của mình sang MongoDB

MongoDB Enterprise cung cấp hỗ trợ thông qua các thư viện LDAP nền tảng để ủy quyền các yêu cầu xác thực và ủy quyền cho dịch vụ Giao thức truy cập thư mục hạng nhẹ (LDAP) được chỉ định, chẳng hạn như Active Directory (AD)

Hướng dẫn này mô tả cách định cấu hình MongoDB để thực hiện xác thực và ủy quyền thông qua máy chủ Active Directory (AD) thông qua các thư viện nền tảng

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

Quan trọng

Làm quen kỹ lưỡng với các chủ đề sau trước khi tiếp tục

  • Thư mục hoạt động

Mô tả đầy đủ về AD nằm ngoài phạm vi của hướng dẫn này. Hướng dẫn này giả định kiến ​​thức trước về AD

MongoDB hỗ trợ sử dụng các cơ chế SASL để ràng buộc giữa máy chủ MongoDB và AD. Mô tả đầy đủ về SASL, cơ chế SASL hoặc các yêu cầu cấu hình AD cụ thể đối với cơ chế SASL nhất định nằm ngoài phạm vi của hướng dẫn này. Hướng dẫn này giả định kiến ​​thức trước về SASL và chủ đề liên quan của nó

cân nhắc

Hướng dẫn này giải thích cấu hình MongoDB để xác thực và ủy quyền AD

Để thực hiện quy trình này trên máy chủ MongoDB của riêng bạn, bạn phải sửa đổi các quy trình đã cho liên quan đến cơ sở hạ tầng cụ thể của riêng bạn, đặc biệt là cấu hình Active Directory, xây dựng truy vấn AD hoặc quản lý người dùng

Bảo mật tầng vận tải

Theo mặc định, MongoDB tạo kết nối TLS/SSL khi liên kết với máy chủ AD. Điều này yêu cầu định cấu hình máy chủ lưu trữ của máy chủ MongoDB để có quyền truy cập vào chứng chỉ Cơ quan cấp chứng chỉ (CA) của máy chủ AD

Hướng dẫn này cung cấp hướng dẫn cho các cấu hình máy chủ cần thiết

Hướng dẫn này giả định rằng bạn có quyền truy cập vào chứng chỉ CA của máy chủ AD và có thể tạo một bản sao của chứng chỉ trên máy chủ MongoDB

Ví dụ Lược đồ Active Directory

Hướng dẫn này sử dụng các đối tượng AD mẫu sau đây làm cơ sở cho các truy vấn, cấu hình và đầu ra được cung cấp. Mỗi đối tượng chỉ hiển thị một tập hợp con của các thuộc tính có thể

Đối tượng người dùng

dn:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
userPrincipalName: [email protected]
memberOf: CN=marketing,CN=Users,DC=example,DC=com

dn:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
userPrincipalName: [email protected]
memberOf: CN=web,CN=Users,DC=example,DC=com
memberOf: CN=PrimaryApplication,CN=Users,DC=example,DC=com

dn:CN=sam,CN=Users,DC=dba,DC=example,DC=com
userPrincipalName: [email protected]
memberOf: CN=dba,CN=Users,DC=example,DC=com
memberOf: CN=PrimaryApplication,CN=Users,DC=example,DC=com

dn:CN=joe,CN=Users,DC=analytics,DC=example,DC=com
userPrincipalName: [email protected]
memberof: CN=marketing,CN=Users,DC=example,DC=com

Nhóm đối tượng

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

Thông tin đăng nhập Active Directory

Hướng dẫn này sử dụng tên người dùng và mật khẩu để thực hiện truy vấn trên máy chủ AD. Thông tin đăng nhập được cung cấp phải có đủ đặc quyền trên máy chủ AD để hỗ trợ truy vấn liên quan đến hoặc

Bộ bản sao

Ủy quyền LDAP MongoDB yêu cầu mọi bản sao được đặt trên ít nhất MongoDB 3. 4. 0 trở lên

Cụm phân mảnh

Ủy quyền MongoDB LDAP yêu cầu mọi và trong cụm được phân đoạn phải có ít nhất MongoDB 3. 4. 0 trở lên

Thủ tục

1

Cấu hình TLS/SSL cho server chạy MongoDB

Để kết nối với máy chủ AD (AD) qua TLS/SSL, hoặc yêu cầu quyền truy cập vào chứng chỉ Cơ quan cấp chứng chỉ (CA) của máy chủ AD

Trên Linux, chỉ định chứng chỉ CA của máy chủ AD thông qua tùy chọn

mongo --host  --port 
4 hoặc
mongo --host  --port 
5 trong tệp
mongo --host  --port 
6

Trình quản lý gói của nền tảng của bạn tạo tệp

mongo --host  --port 
6 trong khi cài đặt phụ thuộc
mongo --host  --port 
8 của MongoDB Enterprise. Để biết tài liệu đầy đủ về tệp cấu hình hoặc các tùy chọn được tham chiếu, hãy xem ldap. conf

Trên Microsoft Windows, tải chứng chỉ Cơ quan cấp chứng chỉ (CA) của máy chủ AD bằng công cụ quản lý thông tin xác thực của nền tảng. Công cụ quản lý thông tin đăng nhập chính xác phụ thuộc vào phiên bản Windows. Để sử dụng công cụ này, hãy tham khảo tài liệu về phiên bản Windows của bạn

Nếu hoặc không thể truy cập vào các tệp AD CA, chúng không thể tạo kết nối TLS/SSL tới máy chủ Active Directory

Tùy chọn, đặt thành

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
2 để tắt TLS/SSL

Cảnh báo

Đặt thành

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
2 truyền thông tin văn bản gốc, bao gồm thông tin đăng nhập của người dùng, giữa MongoDB và máy chủ AD

2

Kết nối với máy chủ MongoDB

Kết nối với máy chủ MongoDB bằng trình bao bằng các tùy chọn và

mongo --host  --port 

Nếu máy chủ MongoDB của bạn hiện đang thực thi xác thực, thì bạn phải xác thực với cơ sở dữ liệu

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8 với tư cách là người dùng có các đặc quyền quản lý vai trò, chẳng hạn như các đặc quyền được cung cấp bởi hoặc. Bao gồm cơ chế xác thực được định cấu hình phù hợp với máy chủ MongoDB

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""

Ghi chú

Đối với việc triển khai Windows MongoDB, bạn nên thay thế bằng

var admin = db.getSiblingDB("admin")
admin.createRole(
   {
     role: "CN=dba,CN=Users,DC=example,DC=com",
     privileges: [],
     roles: [ "userAdminAnyDatabase" ]
   }
)
3

3

Tạo vai trò quản trị người dùng

Để quản lý người dùng MongoDB bằng AD, bạn cần tạo ít nhất một vai trò trên cơ sở dữ liệu

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8 có thể tạo và quản lý các vai trò, chẳng hạn như vai trò được cung cấp bởi hoặc

Tên của vai trò phải khớp chính xác với Tên phân biệt của nhóm AD. Nhóm phải có ít nhất một người dùng AD làm thành viên

Đưa ra có sẵn, các hoạt động sau đây

  • Tạo một vai trò được đặt tên cho nhóm AD
    var admin = db.getSiblingDB("admin")
    admin.createRole(
       {
         role: "CN=dba,CN=Users,DC=example,DC=com",
         privileges: [],
         roles: [ "userAdminAnyDatabase" ]
       }
    )
    
    7 và
  • Gán cho nó vai trò trên cơ sở dữ liệu
    mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
    
    8

var admin = db.getSiblingDB("admin")
admin.createRole(
   {
     role: "CN=dba,CN=Users,DC=example,DC=com",
     privileges: [],
     roles: [ "userAdminAnyDatabase" ]
   }
)

Ngoài ra, bạn có thể cấp vai trò cho từng cơ sở dữ liệu mà người dùng phải có đặc quyền quản trị người dùng trên. Các vai trò này cung cấp các đặc quyền cần thiết để tạo và quản lý vai trò

Quan trọng

Cân nhắc áp dụng nguyên tắc đặc quyền tối thiểu khi định cấu hình vai trò MongoDB, nhóm AD hoặc thành viên nhóm

4

Tạo tệp cấu hình MongoDB

Tệp cấu hình MongoDB configuration file là tệp YAML văn bản thuần túy có phần mở rộng tệp

security:
  authorization: "enabled"
  ldap:
    servers: "activedirectory.example.net"
setParameter:
  authenticationMechanisms: 'PLAIN'
1.

  • Nếu bạn đang nâng cấp triển khai MongoDB hiện có, hãy sao chép tệp cấu hình hiện tại và làm việc từ bản sao đó
  • (Chỉ dành cho Linux) Nếu đây là một triển khai mới và bạn đã sử dụng trình quản lý gói của nền tảng để cài đặt MongoDB Enterprise, quá trình cài đặt bao gồm tệp cấu hình mặc định
    security:
      authorization: "enabled"
      ldap:
        servers: "activedirectory.example.net"
    setParameter:
      authenticationMechanisms: 'PLAIN'
    
    2. Sử dụng tệp cấu hình mặc định đó hoặc tạo một bản sao của tệp đó để làm việc từ đó
  • Nếu không có tệp nào như vậy tồn tại, hãy tạo một tệp trống có phần mở rộng
    security:
      authorization: "enabled"
      ldap:
        servers: "activedirectory.example.net"
    setParameter:
      authenticationMechanisms: 'PLAIN'
    
    1 và làm việc từ tệp cấu hình mới đó

5

Định cấu hình MongoDB để kết nối với Active Directory

Trong tệp cấu hình MongoDB, đặt thành máy chủ và cổng của máy chủ AD. Nếu cơ sở hạ tầng AD của bạn bao gồm nhiều máy chủ AD nhằm mục đích sao chép, hãy chỉ định máy chủ và cổng của máy chủ dưới dạng danh sách được phân tách bằng dấu phẩy để

Bạn cũng phải bật xác thực LDAP bằng cách đặt thành đã bật và thành

security:
  authorization: "enabled"
  ldap:
    servers: "activedirectory.example.net"
setParameter:
  authenticationMechanisms: 'PLAIN'
9

Thí dụ

Để kết nối với máy chủ AD đặt tại

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
0, hãy bao gồm các thông tin sau trong tệp cấu hình

security:
  authorization: "enabled"
  ldap:
    servers: "activedirectory.example.net"
setParameter:
  authenticationMechanisms: 'PLAIN'

MongoDB phải liên kết với máy chủ AD để thực hiện truy vấn. Theo mặc định, MongoDB sử dụng cơ chế xác thực đơn giản để liên kết chính nó với máy chủ AD

Ngoài ra, bạn có thể định cấu hình các cài đặt sau trong tệp cấu hình để liên kết với máy chủ AD bằng cách sử dụng

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
1

  • Đặt thành
    security:
      ldap:
        authz:
          queryTemplate:
            "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
    
    3
  • , chỉ định một chuỗi cơ chế SASL được phân tách bằng dấu phẩy mà máy chủ AD hỗ trợ

Hướng dẫn này sử dụng cơ chế xác thực LDAP

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
5 mặc định

6

Định cấu hình Mẫu truy vấn LDAP để ủy quyền

Trong tệp cấu hình MongoDB, đặt thành mẫu URL truy vấn LDAP được định dạng RFC4516. Trong mẫu, hãy sử dụng trình giữ chỗ

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
7 để thay thế tên người dùng được xác thực thành URL truy vấn LDAP. Thiết kế mẫu truy vấn để truy xuất các nhóm của người dùng đã xác thực

Ghi chú

Mô tả đầy đủ về các truy vấn RFC4515, RFC4516 hoặc AD nằm ngoài phạm vi của hướng dẫn này. Những gì được cung cấp trong hướng dẫn này chỉ là một ví dụ và có thể không áp dụng được cho việc triển khai AD cụ thể của bạn

Thí dụ

Mẫu truy vấn sau đây trả về bất kỳ nhóm nào liệt kê

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
7 với tư cách là thành viên, theo tư cách thành viên nhóm đệ quy. Truy vấn LDAP này giả định rằng các đối tượng nhóm theo dõi tư cách thành viên của người dùng bằng cách lưu trữ Tên phân biệt (DN) đầy đủ của người dùng bằng cách sử dụng thuộc tính
security:
  ldap:
    userToDNMapping:
      '[
         {
            match : "(.+)",
            ldapQuery: "DC=example,DC=com??sub?(userPrincipalName={0})"
         }
    ]'
0. Truy vấn bao gồm quy tắc đối sánh cụ thể của AD OID
security:
  ldap:
    userToDNMapping:
      '[
         {
            match : "(.+)",
            ldapQuery: "DC=example,DC=com??sub?(userPrincipalName={0})"
         }
    ]'
1 cho LDAP_MATCHING_RULE_IN_CHAIN. Quy tắc đối sánh này là phần mở rộng dành riêng cho AD cho các bộ lọc tìm kiếm LDAP

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"

Sử dụng mẫu truy vấn, MongoDB thay thế

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
7 bằng tên người dùng được xác thực để truy vấn máy chủ LDAP

Ví dụ: người dùng xác thực là

security:
  ldap:
    userToDNMapping:
      '[
         {
            match : "(.+)",
            ldapQuery: "DC=example,DC=com??sub?(userPrincipalName={0})"
         }
    ]'
3. MongoDB tạo truy vấn LDAP dựa trên , thay thế mã thông báo
security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
7 bằng tên người dùng được cung cấp. Máy chủ Active Directory thực hiện tra cứu nhóm đệ quy cho bất kỳ nhóm nào liệt kê trực tiếp hoặc chuyển tiếp người dùng là thành viên. Dựa trên , máy chủ AD trả về
var admin = db.getSiblingDB("admin")
admin.createRole(
   {
     role: "CN=dba,CN=Users,DC=example,DC=com",
     privileges: [],
     roles: [ "userAdminAnyDatabase" ]
   }
)
7 và
security:
  ldap:
    userToDNMapping:
      '[
         {
            match : "(.+)",
            ldapQuery: "DC=example,DC=com??sub?(userPrincipalName={0})"
         }
    ]'
7

MongoDB ánh xạ từng nhóm DN được trả về thành một vai trò trên cơ sở dữ liệu

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8. Đối với mỗi nhóm được ánh xạ DN, nếu có một vai trò hiện có trên cơ sở dữ liệu
mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8 có tên khớp chính xác với DN, MongoDB sẽ cấp cho người dùng các vai trò và đặc quyền được gán cho vai trò đó

Quy tắc đối sánh

DC=example,DC=com??sub?([email protected])
0 yêu cầu cung cấp đầy đủ DN của người dùng xác thực. Nếu người dùng xác thực bằng định dạng tên người dùng khác, chẳng hạn như
DC=example,DC=com??sub?([email protected])
1 của họ, thì bạn phải chuyển đổi tên người dùng đến thành DN bằng cách sử dụng

7

Không bắt buộc. Chuyển đổi tên người dùng đến để xác thực qua Active Directory,

Nếu người dùng của bạn xác thực bằng tên người dùng không phải là DN LDAP đầy đủ, bạn có thể cần chuyển đổi tên người dùng để hỗ trợ xác thực hoặc ủy quyền LDAP. MongoDB sử dụng tên người dùng đã chuyển đổi cho cả xác thực và ủy quyền

Trong tệp cấu hình MongoDB, đặt để chuyển đổi tên người dùng được cung cấp bởi người dùng xác thực thành một AD DN để hỗ trợ

Thí dụ

Với cấu hình , người dùng phải xác thực bằng LDAP DN đầy đủ của họ. Thay vào đó, nếu người dùng xác thực bằng cách sử dụng

DC=example,DC=com??sub?([email protected])
6 của họ thì phải áp dụng chuyển đổi để chuyển đổi tên người dùng đã cung cấp thành LDAP DN đầy đủ

Cấu hình sau sử dụng bộ lọc biểu thức chính quy

DC=example,DC=com??sub?([email protected])
8 để nắm bắt tên người dùng được cung cấp. MongoDB chèn tên người dùng đã chụp vào mẫu truy vấn
DC=example,DC=com??sub?([email protected])
9 trước khi thực hiện truy vấn

security:
  ldap:
    userToDNMapping:
      '[
         {
            match : "(.+)",
            ldapQuery: "DC=example,DC=com??sub?(userPrincipalName={0})"
         }
    ]'

Máy chủ Active Directory trả về LDAP DN đầy đủ được liên kết với đối tượng người dùng với một

DC=example,DC=com??sub?([email protected])
6 phù hợp. MongoDB sau đó có thể sử dụng tên người dùng đã chuyển đổi này để xác thực và ủy quyền

Bạn phải sửa đổi cấu hình mẫu đã cho để phù hợp với việc triển khai của mình. Ví dụ: DN cơ sở

DC=example,DC=com??sub?([email protected])
9 phải khớp với DN cơ sở chứa các thực thể người dùng của bạn. Các sửa đổi khác có thể cần thiết để hỗ trợ triển khai AD của bạn

Thí dụ

Người dùng xác thực là

security:
  ldap:
    bind:
      queryUser: "[email protected]"
      queryPassword: "secret123"
2. MongoDB trước tiên áp dụng bất kỳ biến đổi nào được chỉ định trong. Dựa trên cấu hình được cung cấp, MongoDB nắm bắt tên người dùng trong giai đoạn
DC=example,DC=com??sub?([email protected])
8 và thực hiện truy vấn LDAP

DC=example,DC=com??sub?([email protected])

Dựa trên cấu hình , máy chủ AD sẽ trả về

security:
  ldap:
    bind:
      queryUser: "[email protected]"
      queryPassword: "secret123"
5

MongoDB sau đó thực thi truy vấn LDAP được định cấu hình trong , thay thế mã thông báo

security:
  ldap:
    authz:
      queryTemplate:
        "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
7 bằng tên người dùng đã chuyển đổi
security:
  ldap:
    bind:
      queryUser: "[email protected]"
      queryPassword: "secret123"
5

8

Định cấu hình thông tin đăng nhập truy vấn

MongoDB yêu cầu thông tin đăng nhập để thực hiện các truy vấn trên máy chủ AD

Định cấu hình các cài đặt sau trong tệp cấu hình

  • , chỉ định người dùng Active Directory liên kết hoặc để thực hiện các truy vấn trên máy chủ AD
  • , chỉ định mật khẩu cho chỉ định

security:
  ldap:
    bind:
      queryUser: "[email protected]"
      queryPassword: "secret123"

Trên các máy chủ Windows MongoDB, bạn có thể đặt thành

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
05 để sử dụng thông tin đăng nhập của người dùng hệ điều hành thay vì
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
03 và
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
07

Phải có quyền thực hiện tất cả các truy vấn LDAP thay mặt cho MongoDB

9

Không bắt buộc. Thêm cài đặt cấu hình bổ sung

Thêm bất kỳ tùy chọn cấu hình bổ sung nào cần thiết cho việc triển khai của bạn. Ví dụ: bạn có thể chỉ định mong muốn của mình hoặc thay đổi số mặc định

10

Khởi động máy chủ MongoDB với xác thực và ủy quyền Active Directory

Khởi động máy chủ MongoDB với tùy chọn, chỉ định đường dẫn đến tệp cấu hình được tạo trong quy trình này. Nếu máy chủ MongoDB hiện đang chạy, hãy chuẩn bị thích hợp để dừng máy chủ

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
0

Triển khai Windows MongoDB phải sử dụng thay vì

11

Kết nối với máy chủ MongoDB

Kết nối với máy chủ MongoDB, xác thực là người dùng có tư cách thành viên nhóm trực tiếp hoặc chuyển tiếp tương ứng với vai trò MongoDB trên cơ sở dữ liệu

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8 với , hoặc vai trò tùy chỉnh có đặc quyền tương đương

Sử dụng trình bao để xác thực với máy chủ MongoDB, đặt các tùy chọn sau

  • với tên máy chủ của máy chủ MongoDB
  • với cổng của máy chủ MongoDB
  • đến tên người dùng của người dùng
  • đến mật khẩu của người dùng
  • đến
    dn:CN=marketing,CN=Users,DC=example,DC=com
    member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
    member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com
    
    dn:CN=engineering,CN=Users,DC=example,DC=com
    member:CN=web,CN=Users,DC=example,DC=com
    member:CN=dba,CN=users,DC=example,DC=com
    
    dn:CN=web,CN=Users,DC=example,DC=com
    member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
    
    dn:CN=dba,CN=Users,DC=example,DC=com
    member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
    
    dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
    member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
    member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
    
    23
  • đến
    dn:CN=marketing,CN=Users,DC=example,DC=com
    member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
    member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com
    
    dn:CN=engineering,CN=Users,DC=example,DC=com
    member:CN=web,CN=Users,DC=example,DC=com
    member:CN=dba,CN=users,DC=example,DC=com
    
    dn:CN=web,CN=Users,DC=example,DC=com
    member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
    
    dn:CN=dba,CN=Users,DC=example,DC=com
    member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
    
    dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
    member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
    member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
    
    25

Thí dụ

Trước đó trong quy trình này, bạn đã định cấu hình vai trò

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
26 trên cơ sở dữ liệu
mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8 với các quyền được yêu cầu. Vai trò này tương ứng với một nhóm AD. Dựa trên cấu hình , bạn có thể xác thực là người dùng
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
28 và nhận các quyền cần thiết

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
1

Việc triển khai Windows MongoDB phải sử dụng

var admin = db.getSiblingDB("admin")
admin.createRole(
   {
     role: "CN=dba,CN=Users,DC=example,DC=com",
     privileges: [],
     roles: [ "userAdminAnyDatabase" ]
   }
)
3 thay vì

Với cấu hình, người dùng xác thực thành công và nhận được các quyền thích hợp

Ghi chú

Nếu bạn muốn xác thực là người dùng hiện tại không phải ______1_______31, hãy đặt thành

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
33. Điều này yêu cầu máy chủ MongoDB bao gồm
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
33

11

Tạo vai trò để ánh xạ các nhóm AD được trả về

Đối với mỗi nhóm trên máy chủ AD mà bạn muốn sử dụng để ủy quyền MongoDB, bạn phải tạo một vai trò phù hợp trên cơ sở dữ liệu

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8 của máy chủ MongoDB

Thí dụ

Hoạt động sau đây tạo một vai trò được đặt tên theo nhóm AD DN

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
38, chỉ định các vai trò và đặc quyền phù hợp với nhóm đó

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
2

Với cấu hình , MongoDB cấp cho người dùng xác thực vai trò là

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
39 hoặc
security:
  ldap:
    bind:
      queryUser: "[email protected]"
      queryPassword: "secret123"
2 trên cơ sở dữ liệu
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
42

Ghi chú

Để quản lý các vai trò trên cơ sở dữ liệu

mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8, bạn phải được xác thực là người dùng trên
mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
8, hoặc một vai trò tùy chỉnh trên đó với các đặc quyền tương đương

12

Chuyển người dùng hiện tại từ dn:CN=marketing,CN=Users,DC=example,DC=com member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com dn:CN=engineering,CN=Users,DC=example,DC=com member:CN=web,CN=Users,DC=example,DC=com member:CN=dba,CN=users,DC=example,DC=com dn:CN=web,CN=Users,DC=example,DC=com member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com dn:CN=dba,CN=Users,DC=example,DC=com member:CN=sam,CN=Users,DC=dba,DC=example,DC=com dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com member:CN=sam,CN=Users,DC=dba,DC=example,DC=com member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com 31 sang máy chủ ActiveDirectory

Nếu nâng cấp cài đặt hiện có được định cấu hình trên cơ sở dữ liệu

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
31, bạn phải đáp ứng các yêu cầu sau đối với mỗi người dùng để đảm bảo quyền truy cập sau khi định cấu hình MongoDB để xác thực và ủy quyền AD

  • Người dùng có đối tượng người dùng tương ứng trên máy chủ AD
  • Người dùng có tư cách thành viên trong các nhóm thích hợp trên máy chủ AD
  • MongoDB chứa các vai trò trên cơ sở dữ liệu
    mongo --host  --port  --username  --password  --authenticationDatabase="admin" --authenticationMechanism=""
    
    8 được đặt tên cho các nhóm AD của người dùng, sao cho người dùng được ủy quyền giữ lại các đặc quyền của mình

Thí dụ

Người dùng sau tồn tại trên cơ sở dữ liệu

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
31

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
3

Giả sử người dùng thuộc nhóm AD

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
51, thao tác sau đây sẽ tạo vai trò phù hợp với các đặc quyền phù hợp

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
4

Dựa trên cấu hình , MongoDB ủy quyền cho bất kỳ người dùng nào có tư cách thành viên trực tiếp hoặc chuyển tiếp trong nhóm

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
51 để thực hiện các thao tác trên cơ sở dữ liệu
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
55 và
dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
42

Quan trọng

Khi định cấu hình vai trò cho nhóm AD tương ứng, hãy nhớ rằng tất cả người dùng có tư cách thành viên trong nhóm đó đều có thể nhận được các vai trò và đặc quyền được chỉ định. Cân nhắc áp dụng nguyên tắc đặc quyền tối thiểu khi định cấu hình vai trò MongoDB, nhóm AD hoặc thành viên nhóm

Nếu bạn muốn tiếp tục cho phép người dùng trên cơ sở dữ liệu không phải ______1_______31 truy cập MongoDB, bạn phải bao gồm

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
33 trong tùy chọn cấu hình

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
5

Ngoài ra, chuyển những người dùng không phải ______1_______31 sang AD bằng cách thực hiện theo quy trình trên

Quy trình này tạo ra tệp cấu hình sau

dn:CN=marketing,CN=Users,DC=example,DC=com
member:CN=bob,CN=Users,DC=marketing,DC=example,DC=com
member:CN=joe,CN=Users,DC=analytics,DC=example,DC=com

dn:CN=engineering,CN=Users,DC=example,DC=com
member:CN=web,CN=Users,DC=example,DC=com
member:CN=dba,CN=users,DC=example,DC=com

dn:CN=web,CN=Users,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com

dn:CN=dba,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com

dn:CN=PrimaryApplication,CN=Users,DC=example,DC=com
member:CN=sam,CN=Users,DC=dba,DC=example,DC=com
member:CN=alice,CN=Users,DC=engineering,DC=example,DC=com
6

Cấu hình mẫu đã cho yêu cầu sửa đổi để phù hợp với lược đồ Active Directory, cấu trúc thư mục và cấu hình của bạn. Bạn cũng có thể yêu cầu thêm tùy chọn tệp cấu hình cho việc triển khai của mình.

Để biết thêm thông tin về cấu hình vai trò và đặc quyền, hãy xem

  • kiểm soát truy cập cấp bộ sưu tập

←   Xác thực bằng SASL và LDAP với OpenLDAP Ủy quyền LDAP  →

© MongoDB, Inc 2008-nay. MongoDB, Mongo và logo chiếc lá là các nhãn hiệu đã đăng ký của MongoDB, Inc

LDAP trong MongoDB là gì?

Máy chủ LDAP đánh giá truy vấn và trả về danh sách các nhóm mà người dùng được xác thực thuộc về . MongoDB cho phép người dùng thực hiện các hành động trên máy chủ bằng cách ánh xạ Tên phân biệt (DN) của từng nhóm được trả về thành một vai trò trên cơ sở dữ liệu quản trị.

Bạn có thể sử dụng LDAP với Active Directory không?

AD không hỗ trợ LDAP, có nghĩa là nó vẫn có thể là một phần trong sơ đồ quản lý truy cập tổng thể của bạn. Active Directory chỉ là một ví dụ về dịch vụ thư mục hỗ trợ LDAP . Có những hương vị khác, quá. Dịch vụ thư mục Red Hat, OpenLDAP, Máy chủ thư mục Apache, v.v.

Kerberos trong MongoDB là gì?

Kerberos là giao thức xác thực tiêu chuẩn ngành dành cho các hệ thống máy khách/máy chủ lớn . Kerberos cho phép MongoDB và các ứng dụng tận dụng các quy trình và cơ sở hạ tầng xác thực hiện có. MongoDB Enterprise chỉ hỗ trợ triển khai Kerberos của MIT.

LDAP có thể được sử dụng để ủy quyền không?

Chỉ có thể áp dụng ủy quyền LDAP cho người dùng được xác thực LDAP . Người dùng LDAP phải thuộc một hoặc nhiều nhóm LDAP hoặc có một hoặc nhiều thuộc tính LDAP ánh xạ tới các vai trò trong Doanh nghiệp kết nối ứng dụng, với quyền truy cập thích hợp vào API REST của quản trị viên.