Sdílet prostřednictvím


Role pro správu instančních objektů

Tento článek popisuje, jak spravovat role u instančních objektů ve vašem účtu Azure Databricks.

Instanční objekt je identita, kterou vytvoříte v Azure Databricks pro použití s automatizovanými nástroji, úlohami a aplikacemi. Instanční objekty poskytují automatizovaným nástrojům a skriptům přístup k prostředkům Azure Databricks jenom pomocí rozhraní API a poskytují větší zabezpečení než používání uživatelů nebo skupin.

K používání instančního objektu můžete grant uživatele Azure Databricks, instanční objekty a skupiny účtů. To umožňuje uživatelům spouštět úlohy jako instanční objekt, nikoli jako jejich identitu. Tím zabráníte selhání úloh, pokud uživatel opustí vaši organizaci nebo skupinu.

Přehled instančních objektů najdete v tématu Správa instančních objektů.

Role instančního objektu

Role instančního objektu jsou role na úrovni účtu. To znamená, že je potřeba je v účtu definovat jenom jednou a použít je ve všech pracovních prostorech. V rámci služebního principálu můžete grant dvě role: Manažer služebního principálu a Uživatel služebního principálu.

  • Správce instančního objektu umožňuje spravovat role v instančním objektu. Tvůrce instančního objektu má v instančním objektu roli Správce instančního objektu. Správci účtů mají roli Správce instančního objektu pro všechny instanční objekty v účtu.

Poznámka:

Pokud byl instanční objekt vytvořen před 13. červnem 2023, tvůrce instančního objektu ve výchozím nastavení nemá roli Správce instančního objektu. Pokud potřebujete být manažerem, požádejte správce účtu, aby roli správce instančního objektu .

  • Uživatel instančního objektu umožňuje uživatelům pracovního prostoru spouštět úlohy jako instanční objekt. Úloha se spustí s identitou instančního objektu místo identity vlastníka úlohy.

Uživatelé s rolí Správce instančního objektu nedědí roli uživatele instančního objektu. Pokud chcete k provádění úloh použít instanční objekt, musíte explicitně přiřadit roli uživatele instančního objektu i po vytvoření instančního objektu.

Poznámka:

Role instančního objektu Azure Databricks se nepřekrývají s rolemi Azure ani s rolemi Microsoft Entra ID. Tyto role zahrnují pouze účet Azure Databricks.

Správa rolí instančního objektu pomocí konzoly účtu

Správci účtů můžou spravovat role instančních objektů pomocí konzoly účtu.

Zobrazení rolí v instančním objektu

  1. Jako správce účtu se přihlaste ke konzole účtu.
  2. Na bočním panelu klikněte na Správa uživatelů.
  3. Na kartě Instanční objekty vyhledejte a klikněte na název.
  4. Klikněte na kartu Oprávnění .

Můžete zobrazit list principálů a roli, které jsou jim uděleny u zástupce služby. K vyhledání konkrétního objektu zabezpečení nebo role můžete použít také panel hledání.

Grant role služebního principála

  1. Jako správce účtu se přihlaste ke konzole účtu.

  2. Na bočním panelu klikněte na Správa uživatelů.

  3. Na kartě Instanční objekty vyhledejte a klikněte na název.

  4. Klikněte na kartu Oprávnění .

  5. Klepněte na Grant pro přístup k.

  6. Vyhledejte a select uživatele, instanční objekt nebo skupinu a zvolte roli nebo role (Instanční objekt: Správce nebo Instanční objekt: Uživatel) k přiřazení.

    Poznámka:

    Uživatelé s rolí Správce instančního objektu nedědí roli uživatele instančního objektu. Pokud chcete, aby uživatel použil instanční objekt ke spouštění úloh, budete muset explicitně přiřadit roli instančního objektu uživatele .

  7. Klikněte na Uložit.

Revoke role instančního objektu

  1. Jako správce účtu se přihlaste ke konzole účtu.
  2. Na bočním panelu klikněte na Správa uživatelů.
  3. Na kartě Instanční objekty vyhledejte a klikněte na název.
  4. Klikněte na kartu Oprávnění .
  5. Vyhledejte uživatele, instanční objekt nebo skupinu, abyste mohli upravit své role.
  6. Na řádku s hlavním prvkem klikněte na nabídku Kebab Kebab menu a pak selectUpravit. Případně selectodstranit od do revoke všechny role hlavního objektu.
  7. Klikněte na možnost Upravit.
  8. Klikněte na X vedle rolí, které chcete revoke.
  9. Klikněte na Uložit.

Správa rolí instančního objektu pomocí stránky nastavení pracovního prostoru

Správci pracovního prostoru můžou spravovat role instančních objektů pro instanční objekty, které mají roli Správce instančních objektů na stránce nastavení správce.

Zobrazení rolí v instančním objektu

  1. Jako správce pracovního prostoru se přihlaste k pracovnímu prostoru Azure Databricks.
  2. Klikněte na své uživatelské jméno v horním panelu pracovního prostoru Azure Databricks a selectNastavení.
  3. Klikněte na kartu Identita a přístup .
  4. Vedle instančních objektů klikněte na Spravovat.
  5. Vyhledejte název a klikněte na název.
  6. Klikněte na kartu Oprávnění .

Můžete zobrazit list principálů a rolí, které jsou jim udělovány na služebním uživateli. K vyhledání konkrétního objektu zabezpečení nebo role můžete použít také panel hledání.

Grant role zabezpečeného objektu služby

Abyste mohli role, musíte mít u "service principal" roli správce .

  1. Jako správce pracovního prostoru se přihlaste k pracovnímu prostoru Azure Databricks.

  2. Klikněte na své uživatelské jméno v horním panelu pracovního prostoru Azure Databricks a selectNastavení.

  3. Klikněte na kartu Identita a přístup .

  4. Vedle instančních objektů klikněte na Spravovat.

  5. Vyhledejte název a klikněte na název.

  6. Klikněte na kartu Oprávnění .

  7. Klepněte na Grant pro přístup k.

  8. Vyhledejte a select uživatele, instanční objekt nebo skupinu a zvolte roli nebo role (Instanční objekt: Správce nebo Instanční objekt: Uživatel) k přiřazení.

    Poznámka:

    Role se dají udělit libovolnému uživateli, instančnímu objektu nebo skupině na úrovni účtu, i když nejsou členem pracovního prostoru. Role nelze udělit místním skupinám pracovního prostoru.

    Uživatelé s rolí Správce instančního objektu nedědí roli uživatele instančního objektu. Pokud chcete, aby uživatel použil instanční objekt ke spouštění úloh, budete muset explicitně přiřadit roli instančního objektu uživatele .

  9. Klikněte na Uložit.

Revoke role instančního objektu

Abyste mohli role, musíte mít u instančního objektu roli Správce instančního objektu.

  1. Jako správce pracovního prostoru se přihlaste k pracovnímu prostoru Azure Databricks.
  2. Klikněte na své uživatelské jméno v horním panelu pracovního prostoru Azure Databricks a selectNastavení.
  3. Klikněte na kartu Identita a přístup .
  4. Vedle instančních objektů klikněte na Spravovat.
  5. Vyhledejte název a klikněte na název.
  6. Klikněte na kartu Oprávnění .
  7. Vyhledejte uživatele, instanční objekt nebo skupinu, abyste mohli upravit své role.
  8. Na řádku s principálem klikněte na nabídku kebab Kebab menu a pak selectUpravit. Případně selectodstranit až revoke všechny role hlavního uživatele.
  9. Klikněte na možnost Upravit.
  10. Klikněte na X vedle rolí, které chcete revoke.
  11. Klikněte na Uložit.

Správa rolí instančního objektu pomocí rozhraní příkazového řádku Databricks

Abyste mohli spravovat role instančního objektu, musíte mít roli Instančního objektu. Ke správě rolí můžete použít rozhraní příkazového řádku Databricks. Informace o instalaci a ověřování v rozhraní příkazového řádku Databricks najdete v tématu Co je rozhraní příkazového řádku Databricks?.

Role instančního objektu můžete spravovat také pomocí rozhraní API pro řízení přístupu k účtům. Rozhraní API pro řízení přístupu k účtům se podporuje prostřednictvím účtu a pracovních prostorů Azure Databricks.

Správci účtů volají rozhraní API na accounts.azuredatabricks.net ({account-domain}/api/2.0/preview/accounts/{account_id}/access-control).

Uživatelé s rolí Správce instančního objektu, kteří nejsou správci účtu, volají rozhraní API v doméně pracovního prostoru ({workspace-domain}/api/2.0/preview/accounts/access-control/).

Grant role objektu služby pomocí rozhraní příkazového řádku Databricks

Rozhraní API pro řízení přístupu k účtům etag a rozhraní příkazového řádku používají pole k zajištění konzistence. Prostřednictvím rozhraní API ke službě grant nebo revoke role instančního objektu nejprve zadejte příkaz pravidla GETset a v odpovědi obdržíte etag. Můžete poté místně použít změny a nakonec vydat pravidlo PUTset pomocí etag.

Například spuštěním následujícího příkazu vyřešte set pravidla GET na instančním objektu, ke kterému chcete grant přístup:

databricks account access-control get-rule-set accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default <etag>

Nahrazení:

  • <account-id> s ID účtu.
  • <application-id> s ID aplikace instančního objektu.
  • <etag> s ""

Příklad odpovědi:

{
  "etag":"<etag>",
  "grant_rules": [
    {
      "principals": [
        "users/user@example.com"
      ],
      "role":"roles/servicePrincipal.manager"
    },
    {
      "principals": [
        "users/user@example.com"
      ],
      "role":"roles/servicePrincipal.user"
    }
  ],
  "name":"<name>"
}

etag Zkopírujte pole z textu odpovědi pro pozdější použití.

Potom můžete provést aktualizace místně, když se rozhodnete o konečném stavu pravidel, a poté použít značku etag k update pravidlu set. Pokud chcete grant instančního objektu : Role uživatele pro user2@example.comuživatele, spusťte následující příkaz:

databricks account access-control update-rule-set --json '{
  "name": "accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default",
  "rule_set": {
      "name": "accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default",
      "grant_rules": [
        {
            "role": "roles/servicePrincipal.user",
            "principals": ["users/user2@example.com"]
        }
      ],
      "etag": "<etag>"
  }
}'

Nahrazení:

  • <account-id> s ID účtu.
  • <application-id> s ID aplikace instančního objektu.
  • <etag> s značkou etag, kterou jste zkopírovali z poslední odpovědi.

Příklad odpovědi:

{
  "etag":"<new-etag>",
  "grant_rules": [
    {
      "principals": [
        "users/user2@example.com"
      ],
      "role":"roles/servicePrincipal.user"
    }
  ],
  "name":"accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default"
}

Důležité

Vzhledem k tomu, že se jedná o metodu, přepíšou PUT se všechny existující role. Pokud chcete zachovat všechny existující role, musíte je přidat do grant_roles pole.

List principálové služby, které můžete použít

Pomocí rozhraní API hlavních služeb pracovního prostoru můžete list hlavní služby, kde máte přiřazenou roli uživatele, filtrováním podle servicePrincipal/use.

Pokud chcete list instanční objekty služby, na kterých máte roli uživatele instančního objektu, proveďte následující příkaz:

databricks service-principals list -p WORKSPACE --filter "permission eq 'servicePrincipal/use'"

Také můžete list bázové entity služeb pomocí rozhraní API bázových entit služby pracovního prostoru .