Delen via


Resources toevoegen aan een Databricks-app

Uw Databricks-apps kunnen worden geïntegreerd met verschillende functies van het Azure Databricks-platform, zoals Databricks SQL om data te bevragen, Lakeflow Jobs voor gegevensopname en -verwerking, Mosaic AI Model Serving voor toegang tot generatieve AI-modellen, en Azure Databricks Secrets voor het beheren van gevoelige informatie. In de context van apps worden deze platformfuncties resources genoemd.

Waarom resources gebruiken?

Om apps draagbaar en veilig te houden, vermijdt u hardcodering van resource-id's. In plaats van bijvoorbeeld een vaste SQL-warehouse-id in te sluiten in uw app-code, configureert u het SQL Warehouse als een resource via de gebruikersinterface van Databricks Apps.

Het gebruik van Databricks Apps-resources in plaats van directe API-aanroepen heeft verschillende voordelen:

  • Hiermee worden referenties en machtigingen automatisch beheerd, waardoor handmatige tokenafhandeling in uw code wordt geëlimineerd.
  • Hiermee worden resourcepaden, eindpunten en verbindingsdetails automatisch verwerkt.
  • Biedt veilige, beheerde toegang in plaats van zelfbeheerde referenties te vereisen voor directe API-aanroepen.
  • Apps worden overdraagbaar tussen omgevingen zonder codewijzigingen.

Ondersteunde resourcetypen

De volgende tabel bevat alle resourcetypen die u kunt toevoegen aan uw Databricks-app:

Hulpmiddeltype Description Standaardresourcesleutel Beschikbare machtigingen
Genieruimte Op AI gebaseerde analyse-interface voor query's in natuurlijke taal genie-space
  • Kan weergeven
  • Kan draaien
  • Kan bewerken
  • Kan beheren
Lakebase-database Unity Catalog-database voor gegevensopslag en query's database
  • Kan verbinden en creëren
Lakeflow-taak Werkstromen voor gegevensopname en -verwerking job
  • Kan weergeven
  • Kan uitvoering beheren
  • Kan beheren
MLflow-experimenten Machine learning-experimenten bijhouden en modellevenscyclusbeheer experiment
  • Kan lezen
  • Kan bewerken
  • Kan beheren
Eindpunt voor modellering Machine learning-modelimplementatie voor deductieaanvragen serving-endpoint
  • Kan weergeven
  • Kan queries uitvoeren
  • Kan beheren
Geheim Veilige opslag voor gevoelige waarden, zoals API-sleutels en tokens secret
  • Kan lezen
  • Kan schrijven
  • Kan beheren
SQL Warehouse Rekenresources voor het uitvoeren van SQL-query's sql-warehouse
  • Mag gebruiken
  • Kan beheren
Unity Catalog-verbinding Beheerde verbindingen met externe gegevensbronnen connection
  • Verbinding gebruiken
Door de gebruiker gedefinieerde functie Geregistreerde SQL- en Python-functies in Unity Catalog function
  • Kan uitvoeren
Unity Catalog-volume Bestandsopslag in Unity Catalog voor app-artefacten en -gegevens volume
  • Kan lezen
  • Kan lezen en schrijven
Vectorzoekindex Semantische zoekopdrachten en op overeenkomsten gebaseerde ophaalbewerkingen van vectoren vector-search-index
  • Kan selecteren

Voorwaarden

Als u een resource aan een app wilt toevoegen, moet aan de volgende voorwaarden worden voldaan:

  • De bron moet bestaan.
  • De gebruiker die de resource toevoegt, moet over de Can manage machtiging voor de resource en de app beschikken.

Apps worden uitgevoerd met minimale bevoegdheden en zijn afhankelijk van bestaande resources binnen het Azure Databricks-platform. Wanneer de app wordt geïmplementeerd, heeft de service-principal toegang tot deze resources en moet deze beschikken over de benodigde machtigingen, zoals toegang op tabelniveau voor SQL-query's of leestoegang tot geheimen. Zie Autorisatie configureren in een Databricks-app.

Resources voor uw app configureren

Met resources kan uw app veilig verbinding maken met services waarvoor deze afhankelijk is, zonder dat gevoelige of omgevingsspecifieke waarden hoeven te worden gecodeerd.

Voeg resources rechtstreeks toe in de gebruikersinterface van Databricks-apps wanneer u een app maakt of bewerkt.

  1. Wanneer u een app maakt of bewerkt, gaat u naar de stap Configureren .
  2. Klik in de sectie App-resources op + Resource toevoegen.
  3. Selecteer het resourcetype dat u wilt toevoegen.
  4. Stel de machtigingen voor de app-service-principal in voor de resource.
  5. Wijs een sleutel toe aan de resource en verwijs naar die sleutel in uw app.yaml bestand.

Een SQL Warehouse toevoegen als een app-resource in de gebruikersinterface

App-toegang tot resources beheren

Elke app heeft een toegewezen service-principal. Volg deze aanbevolen procedures om de toegang veilig te beheren.

  • Gebruik de serviceprincipal van de app voor authenticatie. Codeer nooit persoonlijke toegangstokens (PAT's) in uw code. Toegangsreferenties worden automatisch geïnjecteerd als omgevingsvariabelen:
    • DATABRICKS_CLIENT_ID
    • DATABRICKS_CLIENT_SECRET
  • Deel geen service-principalreferenties tussen apps of gebruikers. Elke app moet zijn eigen referenties gebruiken voor isolatie en beveiliging.
  • Pas toegang met minimale bevoegdheden toe. Alleen de minimaal vereiste machtigingen verlenen aan de service-principal van de app. Bijvoorbeeld:
    • Verlenen CAN USE aan een SQL-warehouse als de app alleen query's hoeft uit te voeren.
    • Verlenen CAN QUERY aan een serveer-eindpunt als de app alleen inference-aanvragen verzendt.
    • Verlenen SELECT of MODIFY op Unity Catalog-tabellen op basis van de gegevenstoegangsbehoeften van de app.

Volgende stappen

Nadat u resources aan uw app hebt toegevoegd, raadpleegt u deze resources in de env sectie van uw app-configuratie met behulp van het valueFrom veld. Zie Omgevingsvariabelen definiëren in een Databricks-app voor instructies.