mongoDB安全認證機制

來源:互聯網
上載者:User

為了保證資料的安全性,mongodb提供了兩種方式的安全驗證機制:①帳號密碼認證 ②IP綁定


一、帳號密碼認證

       這個沒什麼好說的,和普通關係型的資料庫一樣,使用帳號密碼進行認證,並且,使用者有許可權的概念,比如mysql中使用者細分可以管理哪些表。

       在mongodb中,使用者有兩種,一種是超級管理使用者,一種是資料庫擁有者。

       切換至admin資料庫,在system.users集合中,我們可以看到本執行個體中所有的使用者,及其roel。如下:

       

       而後,在啟動mongoDB的時候,使用 -auth 表示需要使用者名稱帳號密碼驗證。

       可以使用db.addUser('userName','pwd')向本資料庫下添加使用者。

        在java中,驗證使用者帳號密碼身份:

db.authenticateCommand(username, password)
       在python中,驗證帳號密碼“:
db.authenticate('testAdmin','123')
     

二、ip地址綁定

      啟動mongodb的時候,使用 -bind_ip 192.168.20.21 表示啟動ip地址綁定,資料庫執行個體將只監聽192.168.20.21的請求。

     ip綁定是怎麼實現安全控制的呢。

     假設我們的mongodb安裝在一台串連外網的伺服器上,這台伺服器又和其他伺服器處於區域網路中。那麼這台伺服器將有三個ip地址:127.0.1.1,內網ip,外網ip。為了保證安全,我們只能只用127.0.0.1或者內網ip。

    如果使用127.0.0.1,那麼串連mongoDB的應用就必須在mongodb的伺服器上。這樣肯定能實現安全保證。

    如果使用內網ip,應用在串連mongodb的時候,必須MongoClient client = new MongoClient("192.168.20.114", 27017);這個ip必須是一個內網ip,外部網路的伺服器就不能訪問mongodb伺服器。從而實現安全。

   


    總結:為了儘可能保證安全,我們一般使用兩種方式的結合體,既綁定ip又使用帳號密碼認證機制。

   


     另外,mongodb的預設連接埠是27017,一般也需要更改這個預設連接埠,來儘可能提高安全性。如何更改預設連接埠呢。只需要在啟動mongodb的時候加上  -port參數就OK了。




    


   



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.