Megosztás:


Olvasási/olvasási/írási jogosultságok másodlagos natív felhasználókkal az Azure DocumentDB-ben

Az Azure DocumentDB speciális írási-olvasási és írásvédett szerepkörökkel támogatja a másodlagos natív DocumentDB-felhasználókat, lehetővé téve az adathozzáférés biztonságos delegálását. A fürtkiépítés során létrehozott beépített adminisztrátor fiók teljes jogosultságokkal rendelkezik, beleértve a felhasználói menedzsmentet is. A másodlagos felhasználókat a rendszer automatikusan fürtreplikákra replikálja, de a felhasználókezelést az elsődleges fürtön kell elvégezni.

Előfeltételek

  • Azure-előfizetés

  • Meglévő Azure DocumentDB-fürt

Natív szerepkörök

Az Azure DocumentDB a következő szerepkörökkel rendelkező másodlagos felhasználók natív szerepköralapú hozzáférés-vezérlését támogatja:

Description
readWriteAnyDatabase Teljes olvasási-írási engedélyek, beleértve az adatbázis-kezelést
clusterAdmin Teljes olvasási-írási engedélyek, beleértve az adatbázis-kezelést
readAnyDatabase Csak olvasható jogosultságok

Felhasználók és szerepkörök kezelése MongoDB-illesztőprogramokkal vagy olyan eszközökkel, mint a MongoDB Shell (mongosh).

Megjegyzés:

Csak az adatbázis-kezelési és üzemeltetési jogosultságokkal rendelkező teljes olvasási-írási felhasználók támogatottak. A szerepkörök külön nem rendelhetők hozzá.

Műveletek hitelesítése és végrehajtása a MongoDB Shell használatával

Hitelesítés a fürt kiépítése során létrehozott beépített felügyeleti fiókkal. Ez a fiók kizárólagos felhasználói felügyeleti jogosultságokkal (userAdmin) rendelkezik a fürtön.

  1. Nyisson egy terminált egy kliensen, amelyen telepítve van a MongoDB shell.

  2. Kérje le az Azure DocumentDB-fürt nevét és az aktuális hitelesítő adatait.

    Jótanács

    A fürt natív kapcsolati sztringjének lekérése az Azure portálon a kapcsolati sztringek szakasz használatával történik.

  3. Csatlakozás a következő kapcsolati sztring használatával:

    mongosh "mongodb+srv://<username>:<password>@<cluster-name>?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
    

Felhasználók kezelése

Létrehoz egy új felhasználót azon a fürtön, amelyen futtatja a parancsot. A createUser parancs ismétlődő felhasználói hibát ad vissza, ha a felhasználó már létezik.

  1. Hozzon létre egy adatsík felügyeleti felhasználót.

    db.runCommand(
      {
        createUser:"yourUserName",
        pwd : "yourPassword",
        roles : [
          { role:"clusterAdmin",db:"admin" },
          { role:"readWriteAnyDatabase", db:"admin" }
        ]
      }
    )
    
  2. Hozzon létre egy írásvédett felhasználót.

    db.runCommand(
      {
        createUser:"yourUserName",
        pwd : "yourPassword",
        roles : [
          { role:"readAnyDatabase",db:"admin" }
        ]
      }
    )
    
  3. Frissítsen egy felhasználót az adatbázisban a updateUser parancs futtatásával.

    use admin
    
    db.runCommand(
      {
        updateUser:"<username>",
        pwd : "<new cleartext password>"
      }
    )
    

    Megjegyzés:

    A parancs csak a jelszó frissítését támogatja.

  4. Felhasználó eltávolítása a fürtből.

    use admin
    
    db.runCommand(
      {
        dropUser:"<username>"
      }
    )
    
  5. Kérje le a fürt összes natív felhasználójának adatait, vagy adjon meg egyetlen felhasználót, hogy információkat kapjon a szerepköreikről és más attribútumaikról.

    use admin
    
    db.runCommand(
      {
        usersInfo:1
      }
    )