Dela via


init kommando`

Initiera en ny konfigurationsfil för Data API Builder. Den resulterande JSON samlar in information om datakällor, aktiverade slutpunkter (REST, GraphQL, MCP), autentisering och körningsbeteenden.

Syntax

dab init [options]

Om målkonfigurationsfilen redan finns skriver kommandot över den. Det finns ingen sammanslagning. Använd versionskontroll eller säkerhetskopior om du behöver bevara den tidigare filen.

Snabbblick

Option Sammanfattning
-c, --config Filnamn för utdatakonfiguration (standard dab-config.json)

Avsnittet Autentisering

Option Sammanfattning
--auth.audience JSON Web Token -målgruppsanspråk (JWT)
--auth.issuer JSON Web Token -utfärdaranspråk (JWT)
--auth.provider Identitetsprovider (standard Unauthenticated)

Avsnittet Datakälla

Option Sammanfattning
--connection-string Databasanslutningssträng (stöder @env())
--cosmosdb_nosql-container Cosmos DB NoSQL-containernamn (valfritt)
--cosmosdb_nosql-database Cosmos DB NoSQL-databasnamn (krävs för cosmosdb_nosql)
--database-type Databastyp: mssql, mysql, postgresql, , cosmosdb_postgresqlcosmosdb_nosql
--set-session-context Aktivera SQL Server-sessionskontext (endast mssql)

GraphQL-avsnitt

Option Sammanfattning
--graphql.disabled Deprecated. Inaktiverar GraphQL (använd --graphql.enabled false)
--graphql.enabled Aktivera GraphQL (standard sant)
--graphql.multiple-create.enabled Tillåt flera skapa mutationer (standard falskt)
--graphql.path GraphQL-slutpunktsprefix (standard /graphql)
--graphql-schema Sökväg till GraphQL-schema (krävs för cosmosdb_nosql)

Avsnittet Värd och autentisering

Option Sammanfattning
--host-mode Värdläge: Utveckling eller produktion (standardproduktion)
--cors-origin Lista över tillåtna ursprung (kommaavgränsade)
--runtime.base-route Globalt prefix för alla slutpunkter

MCP-avsnitt

Option Sammanfattning
--mcp.aggregate-records.query-timeout Timeout för verktyget Aggregate-records i sekunder (standard 30, intervall 1–600)
--mcp.disabled Deprecated. Inaktiverar MCP (använd --mcp.enabled false)
--mcp.enabled Aktivera MCP (standard sant)
--mcp.path MCP-slutpunktsprefix (standard /mcp)

Anmärkning

MCP-funktionen är tillgänglig i version 1.7 och senare.

REST-avsnitt

Option Sammanfattning
--rest.disabled Deprecated. Inaktiverar REST (använd --rest.enabled false)
--rest.enabled Aktivera REST (standard sant, föredra framför --rest.disabled)
--rest.path REST-slutpunktsprefix (standard /api, ignoreras för cosmosdb_nosql)
--rest.request-body-strict Framtvinga verifiering av strikt begärandetext (standard falskt, ignoreras för cosmosdb_nosql)

Viktigt!

Blanda inte de nya --*.enabled flaggorna och de äldre --*.disabled flaggorna för samma undersystem i samma kommando. --*.enabled Föredrar mönstret, --rest.disabled, --graphql.disabledoch --mcp.disabled alternativloggvarningarna och tas bort i framtida versioner.

-c, --config

Namn på utdatakonfigurationsfil. Standard är dab-config.json.

Example

dab init \
  --database-type mssql \
  --config dab-config.local.json

Resulterande konfiguration

{
  "data-source": {
    "database-type": "mssql",
    "connection-string": ""
  }
}

--auth.audience

JSON Web Token (JWT) målgruppsanspråk.

Example

dab init \
  --database-type mssql \
  --auth.audience "https://example.com/api"

Resulterande konfiguration

{
  "runtime": {
    "host": {
      "authentication": {
        "jwt": {
          "audience": "https://example.com/api"
        }
      }
    }
  }
}

--auth.issuer

JSON Web Token (JWT) utfärdaranspråk.

Example

dab init \
  --database-type mssql \
  --auth.issuer "https://login.microsoftonline.com/{tenant-id}/v2.0"

Resulterande konfiguration

{
  "runtime": {
    "host": {
      "authentication": {
        "jwt": {
          "issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
        }
      }
    }
  }
}

--auth.provider

Identitetsprovider. Standard är Unauthenticated.

När Unauthenticated är aktiv inspekterar eller validerar INTE DAB någon JWT. Alla begäranden körs som anonymous. En annan tjänst kan autentisera eller filtrera begäranden innan de når DAB, men DAB auktoriserar fortfarande endast som anonymous. Om du vill använda en annan provider anger du den explicit.

Konfigurationsvägledning finns i Konfigurera den oautentiserade providern.

Anmärkning

Funktionerna i Data API Builder 2.0 som beskrivs i det här avsnittet är för närvarande i förhandsversion och kan komma att ändras före allmän tillgänglighet. Mer information finns i Nyheter i version 2.0.

Giltiga värden: Unauthenticated, StaticWebApps, EntraID, AzureAD, AppService, , Simulator. Custom

Viktigt!

Andra leverantörer än Unauthenticated, StaticWebAppsoch Simulator kräver --auth.audience och --auth.issuer.

Example

dab init \
  --database-type mssql \
  --auth.provider AzureAD \
  --auth.audience "https://example.com/api" \
  --auth.issuer "https://login.microsoftonline.com/{tenant-id}/v2.0"

Resulterande konfiguration

{
  "runtime": {
    "host": {
      "authentication": {
        "provider": "AzureAD",
        "jwt": {
          "audience": "https://example.com/api",
          "issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
        }
      }
    }
  }
}

--connection-string

Databasanslutningssträng. Stöder @env().

Example

dab init \
  --database-type mssql \
  --connection-string "@env('MSSQL_CONNECTION_STRING')"

Resulterande konfiguration

{
  "data-source": {
    "connection-string": "@env('MSSQL_CONNECTION_STRING')"
  }
}

--cors-origin

Kommaavgränsad lista över tillåtna ursprung.

Example

dab init \
  --database-type mssql \
  --cors-origin "https://app.example.com,https://admin.example.com"

Resulterande konfiguration

{
  "runtime": {
    "host": {
      "cors": {
        "origins": [ "https://app.example.com", "https://admin.example.com" ]
      }
    }
  }
}

--cosmosdb_nosql-container

Cosmos DB NoSQL-containernamn.

Example

dab init \
  --database-type cosmosdb_nosql \
  --cosmosdb_nosql-container MyContainer

Resulterande konfiguration

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "container": "MyContainer"
    }
  }
}

--cosmosdb_nosql-database

Cosmos DB NoSQL-databasnamn. Krävs för cosmosdb_nosql.

Example

dab init \
  --database-type cosmosdb_nosql \
  --cosmosdb_nosql-database MyDb

Resulterande konfiguration

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "database": "MyDb"
    }
  }
}

--database-type

Anger måldatabasmotorn. Värden som stöds: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql.

Example

dab init \
  --database-type mssql

Resulterande konfiguration

{
  "data-source": {
    "database-type": "mssql"
  }
}

--graphql.disabled

Deprecated. Inaktiverar GraphQL. Föredrar --graphql.enabled false.

--graphql.enabled

Aktivera GraphQL-slutpunkt. Standard är true.

Example

dab init \
  --database-type mssql \
  --graphql.enabled false

Resulterande konfiguration

{
  "runtime": {
    "graphql": {
      "enabled": false
    }
  }
}

--graphql.multiple-create.enabled

Gör det möjligt att skapa flera rader i en enda mutation. Standard är false.

Example

dab init \
  --database-type mssql \
  --graphql.multiple-create.enabled true

Resulterande konfiguration

{
  "runtime": {
    "graphql": {
      "multiple-mutations": {
        "create": { "enabled": true }
      }
    }
  }
}

--graphql.path

GraphQL-slutpunktsprefix. Standard är /graphql.

Example

dab init \
  --database-type mssql \
  --graphql.path /gql

Resulterande konfiguration

{
  "runtime": {
    "graphql": {
      "path": "/gql"
    }
  }
}

--graphql-schema

Sökväg till en GraphQL-schemafil. Krävs för cosmosdb_nosql.

Example

dab init \
  --database-type cosmosdb_nosql \
  --graphql-schema ./schema.gql

Resulterande konfiguration

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "schema": "./schema.gql"
    }
  }
}

--host-mode

Värdläge. Standard är Production.

Giltiga värden: Development, Production.

Example

dab init \
  --database-type mssql \
  --host-mode development

Resulterande konfiguration

{
  "runtime": {
    "host": {
      "mode": "development"
    }
  }
}

--mcp.aggregate-records.query-timeout

Körningstimeout i sekunder för mcp-verktyget aggregate-records. Standard är 30. Intervall: 1600.

Example

dab init \
  --database-type mssql \
  --mcp.aggregate-records.query-timeout 60

Resulterande konfiguration

{
  "runtime": {
    "mcp": {
      "dml-tools": {
        "aggregate-records": {
          "query-timeout": 60
        }
      }
    }
  }
}

--mcp.disabled

Deprecated. Inaktiverar MCP. Föredrar --mcp.enabled false.

--mcp.enabled

Aktivera MCP-slutpunkt. Standard är true.

Example

dab init \
  --database-type mssql \
  --mcp.enabled false

Resulterande konfiguration

{
  "runtime": {
    "mcp": {
      "enabled": false
    }
  }
}

--mcp.path

MCP-slutpunktsprefix. Standard är /mcp.

Example

dab init \
  --database-type mssql \
  --mcp.path /model

Resulterande konfiguration

{
  "runtime": {
    "mcp": {
      "path": "/model"
    }
  }
}

--rest.disabled

Deprecated. Inaktiverar REST. Föredrar --rest.enabled false.

--rest.enabled

Aktivera REST-slutpunkt. Standard är true.

Example

dab init \
  --database-type mssql \
  --rest.enabled false

Resulterande konfiguration

{
  "runtime": {
    "rest": {
      "enabled": false
    }
  }
}

--rest.path

REST-slutpunktsprefix. Standard är /api.

Anmärkning

Ignoreras för cosmosdb_nosql.

Example

dab init \
  --database-type mssql \
  --rest.path /rest

Resulterande konfiguration

{
  "runtime": {
    "rest": {
      "path": "/rest"
    }
  }
}

--rest.request-body-strict

Styr hanteringen av extra fält i begärandeorgan. Standard är false.

  • true: Avvisar överflödiga fält (HTTP 400).
  • false: Ignorerar extra fält.

Anmärkning

Ignoreras för cosmosdb_nosql.

Example

dab init \
  --database-type mssql \
  --rest.request-body-strict false

Resulterande konfiguration

{
  "runtime": {
    "rest": {
      "request-body-strict": false
    }
  }
}

--runtime.base-route

Det globala prefixet har förberetts för alla slutpunkter. Måste börja med /.

Viktigt!

Det här alternativet kräver att autentiseringsprovidern är StaticWebApps. Ställ in --auth.provider StaticWebApps bredvid --runtime.base-route.

Example

dab init \
  --database-type mssql \
  --auth.provider StaticWebApps \
  --runtime.base-route /v1

Resulterande konfiguration

{
  "runtime": {
    "base-route": "/v1"
  }
}

--set-session-context

Aktivera sändning av data till SQL Server med hjälp av sessionskontext. Endast giltigt för mssql. Standard är false.

Example

dab init \
  --database-type mssql \
  --set-session-context true

Resulterande konfiguration

{
  "data-source": {
    "database-type": "mssql",
    "options": {
      "set-session-context": true
    }
  }
}