簡體   English   中英

哪個mongodb-connection(管理員或用戶)用於與數據庫進行交互

[英]which mongodb-connection (admin or user) use to interact with the database

我正在開發ac#-webservice,它將為客戶端提供一些與mongodb進行交互的方法。

我的問題是:我應該使用

-> admin-user從數據庫中讀取/寫入數據庫,並自行處理授權;或者->我應該與當前登錄用戶建立連接,讓mongodb處理用戶授權?

我之所以問是因為,對於某些用戶操作,我需要先查詢用戶數據庫(只有管理員有權讀取/寫入數據),然后才能執行用戶權限足夠的方法。

托比亞斯

簡短的答案是:自己在應用程序內部進行身份驗證。

中等長度的答案是:這主要是基於您的意見,並且無論您采用何種數據庫解決方案,都需要回答這個問題。

長答案是: MongoDB支持4種不同的身份驗證機制

  1. MONGODB-CR-一種內部質詢-響應MongoDB機制。
  2. x.509證書(v2.6中的新功能)。
  3. Kerberos(僅在MongoDB Enterprise )。
  4. LDAP代理授權(僅在MongoDB Enterprise for Linux )。

我假設您運行的Windows使用Kerberos進行身份驗證。 我還假設您沒有MongoDB Enterprise訂閱,因為它的價格是基本訂閱的3倍。 如果這些假設是正確的,則您不能真正使用登錄用戶的Windows身份驗證來訪問數據庫。 這意味着您必須自己處理身份驗證。

我建議使用證書。 如果您的環境支持它,這很容易,它不是特定於MongoDB ,並且非常安全。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM