Rozhraní API pro zásady clusteru

Důležité

Tato funkce je ve verzi Public Preview.

Zásady clusteru omezují schopnost vytvářet clustery na základě sady pravidel. Pravidla zásad omezují atributy nebo hodnoty atributů, které jsou k dispozici pro vytvoření clusteru. Zásady clusteru mají seznamy řízení přístupu (ACL), které omezují jejich použití na konkrétní uživatele a skupiny.

Zásady můžou vytvářet, upravovat a odstraňovat jenom uživatelé s oprávněními správce. Uživatelé s oprávněním správce mají také přístup ke všem zásadám.

Požadavky a omezení týkající se zásad clusteru najdete v tématu Správa zásad clusteru.

Důležité

Pokud chcete získat přístup k rozhraním REST API služby Databricks, musíte použít ověřování.

Rozhraní API zásad clusteru

Rozhraní API zásad clusteru umožňuje vytvářet, vypisovat a upravovat zásady clusteru. Vytváření a úpravy jsou k dispozici pouze správcům. Výpis může provádět libovolný uživatel a je omezený na zásady přístupné pro tohoto uživatele.

Důležité

Rozhraní API zásad clusteru vyžaduje, aby definice JSON zásad byla předána v rámci požadavku JSON ve formě dokument. Ve většině případů to vyžaduje uvozovací znaky uvozovek.

V této části:

Získat

Koncový bod HTTP – metoda
2.0/policies/clusters/get GET

Vrátí specifikaci zásad s daným ID zásad.

Struktura žádosti

Název pole Typ Popis
policy_id STRING ID zásad, o které se mají načíst informace

Struktura odpovědi

Název pole Typ Popis
policy_id STRING Kanonický jedinečný identifikátor pro zásady clusteru.
name STRING Název zásad clusteru. Toto musí být jedinečné. Délka musí být v rozmezí 1 až 100 znaků.
definice STRING Dokument JSON definice zásad vyjádřený v jazyce definic zásad datacihly Dokument JSON musí být předán jako řetězec a nemůže být v rámci požadavků jednoduše vložen.
created_at_timestamp INT64 Čas vytvoření. Časové razítko (v milisekundě), kdy se tyto zásady clusteru vytvořily

Seznam

Koncový bod HTTP – metoda
2.0/policies/clusters/list GET

Vrátí seznam zásad přístupných žádajícím uživatelem.

Struktura žádosti

Název pole Typ Popis
sort_order ListOrder Směr pořadí pro výpis zásad v nástroji; buď ASC nebo DESC . Výchozí hodnota je DESC .
sort_column PolicySortColumn ClusterPolicyAtribut, podle kterého se má řadit. Výchozí hodnota je CREATION_TIME .

Struktura odpovědi

Název pole Typ Popis
Zásady Pole zásad Seznam zásad.
total_count INT64 Celkový počet zásad.
Příklad
{
  "policies": [
    {
      "policy_id": "ABCD000000000000",
      "name": "Test policy",
      "definition": "{\"spark_conf.spark.databricks.cluster.profile\":{\"type\":\"forbidden\",\"hidden\":true}}",
      "created_at_timestamp": 1600000000000
    }
    {
      "policy_id": "ABCD000000000001",
      "name": "Empty",
      "definition": "{}",
      "created_at_timestamp": 1600000000002
    }
  ],
  "total_count": 1
}

Vytvořit

Koncový bod HTTP – metoda
2.0/policies/clusters/create POST

Vytvoří novou zásadu se zadaným názvem a definicí.

Struktura žádosti

Název pole Typ Popis
name STRING Název zásad clusteru. Toto musí být jedinečné. Délka musí být v rozmezí 1 až 100 znaků.
definice STRING Dokument JSON definice zásad vyjádřený v jazyce definic zásad datacihly Dokument JSON musíte předat jako řetězec. nemůže být jednoduše vložen do požadavků.
Příklad
{
  "name": "Example Policy",
  "definition": "{\"spark_version\":{\"type\":\"fixed\",\"value\":\"next-major-version-scala2.12\",\"hidden\":true}}"
}

Struktura odpovědi

Název pole Typ Popis
policy_id STRING Kanonický jedinečný identifikátor pro zásady clusteru.
Příklad
{
  "policy_id": "ABCD000000000000",
}

Upravit

Koncový bod HTTP – metoda
2.0/policies/clusters/edit POST

Aktualizuje existující zásady. Některé clustery, které tato zásada řídí, nejsou platné. V případě takových clusterů musí být v případě, že je potřeba provést úpravu dalšího clusteru, zajištěna konfigurace potvrzující, v opačném případě může i nadále běžet.

Struktura žádosti

Název pole Typ Popis
policy_id STRING ID zásady, která se má aktualizovat Toto pole je vyžadováno.
name STRING Název zásad clusteru. Toto musí být jedinečné. Délka musí být v rozmezí 1 až 100 znaků.
definice STRING Dokument JSON definice zásad vyjádřený v jazyce definic zásad datacihly Dokument JSON musíte předat jako řetězec. nemůže být jednoduše vložen do požadavků.
Příklad
{
  "policy_id": "ABCD000000000000",
  "name": "Example Policy",
  "definition": "{\"spark_version\":{\"type\":\"fixed\",\"value\":\"next-major-version-scala2.12\",\"hidden\":true}}"
}

Odstranit

Koncový bod HTTP – metoda
2.0/policies/clusters/delete POST

Odstraňte zásadu. Clustery, na které se vztahují tyto zásady, můžou pořád běžet, ale nedají se upravovat.

Struktura žádosti

Název pole Typ Popis
policy_id STRING ID zásady, která se má odstranit Toto pole je vyžadováno.
Příklad
{
  "policy_id": "ABCD000000000000"
}

Datové struktury

V této části:

Zásada

Entita zásad clusteru.

Název pole Typ Popis
policy_id STRING Kanonický jedinečný identifikátor pro zásady clusteru.
name STRING Název zásad clusteru. Toto musí být jedinečné. Délka musí být v rozmezí 1 až 100 znaků.
definice STRING Dokument JSON definice zásad vyjádřený v jazyce definic zásad datacihly Dokument JSON musíte předat jako řetězec. nemůže být jednoduše vložen do požadavků.
creator_user_name STRING Uživatelské jméno autora Pole nebude zahrnuto do odpovědi, pokud byl uživatel již odstraněn.
created_at_timestamp INT64 Čas vytvoření. Časové razítko (v milisekundě), kdy se tyto zásady clusteru vytvořily

PolicySortColumn

Pořadí řazení pro ListPolices požadavek.

Název Popis
POLICY_CREATION_TIME Seřadit seznam výsledků podle typu vytvoření zásady
POLICY_NAME Seřadit seznam výsledků podle názvu zásad

Rozhraní API pro oprávnění zásad clusteru

Rozhraní API pro oprávnění zásad clusteru umožňuje nastavit oprávnění pro zásady clusteru. Když uživateli udělíte CAN_USE oprávnění k zásadě, bude na základě něj moci vytvořit nové clustery. Uživatel nemusí mít cluster_create oprávnění k vytváření nových clusterů.

Oprávnění pro zásady clusteru můžou nastavit jenom uživatelé s oprávněními správce.

V následujících koncových bodech <basepath> = /api/2.0/preview .

V této části:

Získat oprávnění

Koncový bod HTTP – metoda
<basepath>/permissions/cluster-policies/<clusterPolicyId>/permissionLevels GET

Struktura žádosti

Název pole Typ Popis
clusterPolicyId STRING Zásady, které se mají načíst oprávnění Toto pole je vyžadováno.

Struktura odpovědi

Seznam ACL clusterů.

Příklad odpovědi

{
  "object_id": "/cluster-policies/D55CAFDD8E00002B",
  "object_type": "cluster-policy",
  "access_control_list": [
    {
      "user_name": "user@mydomain.com",
      "all_permissions": [
        {
          "permission_level": "CAN_USE",
          "inherited": false
        },
      ]
    },
    {
      "group_name": "admins",
      "all_permissions": [
        {
          "permission_level": "CAN_USE",
          "inherited": true,
          "inherited_from_object": [
              "/cluster-policies/"
          ]
        }
      ]
    },
  ]
}

Přidat nebo upravit oprávnění

Koncový bod HTTP – metoda
<basepath>/permissions/cluster-policies/<clusterPolicyId> PATCH

Struktura žádosti

Název pole Typ Popis
clusterPolicyId STRING Zásady, které upravují oprávnění Toto pole je vyžadováno.

Text žádosti

Název pole Typ Popis
access_control_list Pole AccessControl Pole seznamů řízení přístupu.

Text odpovědi

Stejné jako volání GET v <clusterPolicyId> , vrátí zpět upravená oprávnění pro cluster.

Nastavení nebo odstranění oprávnění

Požadavek PUT nahrazuje všechna přímá oprávnění u objektu zásad clusteru. Žádosti o odstranění můžete vytvořit tak, že vytvoříte požadavek GET, který načte aktuální seznam oprávnění následovaných žádostí PUT odebrat položky, které se mají odstranit.

Koncový bod HTTP – metoda
<basepath>/permissions/cluster-policies/<clusterPolicyId> PUT

Struktura žádosti

Název pole Typ Popis
clusterPolicyId STRING Zásady, které se mají nastavit oprávnění Toto pole je vyžadováno.

Text požadavku

Název pole Typ Popis
access_control_list Pole AccessControlInput Pole ovládacích prvků přístupu.

Tělo odpovědi

Stejné jako volání GET v <clusterPolicyId> , vrátí zpět upravená oprávnění pro cluster.

Datové struktury

V této části:

Seznam ACL clusterů

Název atributu Typ Popis
object_id ŘETEZCE ID objektu seznamu ACL, například ../cluster-policies/<clusterPolicyId> .
object_type ŘETEZCE Typ objektu seznamu ACL datacihly, například cluster-policy .
access_control_list Pole AccessControl Řízení přístupu nastavené u objektu ACL.

AccessControl

Název atributu Typ Popis
user_name nebo group_name ŘETEZCE Název objektu zabezpečení (uživatel nebo skupina), který má oprávnění nastavená u objektu ACL.
all_permissions Pole oprávnění Seznam všech oprávnění nastavených pro tento objekt seznamu ACL pro konkrétní objekt zabezpečení Zahrnuje oprávnění přímo nastavená pro tento objekt ACL a oprávnění zděděná z nadřazeného objektu ACL.

Oprávnění

Název atributu Typ Popis
permission_level ŘETEZCE Název úrovně oprávnění
zděděn DATOVÉHO True, pokud není oprávnění seznamu ACL nastaveno přímo, ale zděděno z nadřazeného objektu ACL. False, pokud je nastavena přímo na objekt ACL.
inherited_from_object Seznam [řetězec] Seznam nadřazených objektů ACL, které přispívají k zděděným oprávněním pro objekt ACL. Tato hodnota je definována pouze v případě, že zděděná má hodnotu true.

AccessControlInput

Položka představující pravidlo seznamu ACL použité pro objekt zabezpečení (uživatel nebo skupina).

Název atributu Typ Popis
user_name nebo group_name ŘETEZCE Název objektu zabezpečení (uživatel nebo skupina), který má oprávnění nastavená u objektu ACL.
permission_level ŘETEZCE Název úrovně oprávnění

PermissionLevel

Úroveň oprávnění, kterou můžete nastavit v zásadách clusteru.

Úroveň oprávnění Popis
CAN_USE Povolí uživateli vytvářet clustery na základě zásad. Uživatel nemusí mít oprávnění k vytvoření clusteru.