새 데이터 API 작성기 구성 파일을 초기화합니다. 결과 JSON은 데이터 원본 세부 정보, 사용하도록 설정된 엔드포인트(REST, GraphQL, MCP), 인증 및 런타임 동작을 캡처합니다.
Syntax
dab init [options]
대상 구성 파일이 이미 있는 경우 명령은 덮어씁니다. 병합이 없습니다. 이전 파일을 보존해야 하는 경우 버전 제어 또는 백업을 사용합니다.
한눈에 보기
| Option | 요약 |
|---|---|
-c, --config |
출력 구성 파일 이름(기본 dab-config.json) |
인증 섹션
| Option | 요약 |
|---|---|
--auth.audience |
JWT(JSON 웹 토큰) 대상 클레임 |
--auth.issuer |
JWT(JSON Web Token) 발급자 클레임 |
--auth.provider |
ID 공급자(기본값 Unauthenticated) |
데이터 원본 섹션
| Option | 요약 |
|---|---|
--connection-string |
데이터베이스 연결 문자열(지원)@env() |
--cosmosdb_nosql-container |
Cosmos DB NoSQL 컨테이너 이름(선택 사항) |
--cosmosdb_nosql-database |
Cosmos DB NoSQL 데이터베이스 이름(cosmosdb_nosql 필수) |
--database-type |
데이터베이스 형식: mssql, mysql, postgresql, cosmosdb_postgresqlcosmosdb_nosql |
--set-session-context |
SQL Server 세션 컨텍스트 사용(mssql만 해당) |
GraphQL 섹션
| Option | 요약 |
|---|---|
--graphql.disabled |
Deprecated. GraphQL을 사용하지 않도록 설정(사용 --graphql.enabled false) |
--graphql.enabled |
GraphQL 사용(기본값 true) |
--graphql.multiple-create.enabled |
여러 변경 만들기 허용(기본값 false) |
--graphql.path |
GraphQL 엔드포인트 접두사(기본 /graphql) |
--graphql-schema |
GraphQL 스키마 경로(cosmosdb_nosql 필수) |
호스트 및 인증 섹션
| Option | 요약 |
|---|---|
--host-mode |
호스트 모드: 개발 또는 프로덕션(기본 프로덕션) |
--cors-origin |
허용된 원본 목록(쉼표로 구분) |
--runtime.base-route |
모든 엔드포인트에 대한 전역 접두사 |
MCP 섹션
| Option | 요약 |
|---|---|
--mcp.aggregate-records.query-timeout |
집계 레코드 도구 시간 제한(초)(기본값 30, 범위 1~600) |
--mcp.disabled |
Deprecated. MCP를 사용하지 않도록 설정(사용 --mcp.enabled false) |
--mcp.enabled |
MCP 사용(기본값 true) |
--mcp.path |
MCP 엔드포인트 접두사(기본 /mcp) |
비고
MCP 기능은 버전 1.7 이상에서 사용할 수 있습니다.
REST 섹션
| Option | 요약 |
|---|---|
--rest.disabled |
Deprecated. REST를 사용하지 않도록 설정(사용 --rest.enabled false) |
--rest.enabled |
REST 사용(기본값 true, 선호 --rest.disabled) |
--rest.path |
REST 엔드포인트 접두사(기본 /api, cosmosdb_nosql 대해 무시됨) |
--rest.request-body-strict |
엄격한 요청 본문 유효성 검사 적용(기본값 false, cosmosdb_nosql 대해 무시됨) |
중요합니다
동일한 명령에서 동일한 하위 시스템에 대한 새 --*.enabled 플래그와 레거시 --*.disabled 플래그를 혼합하지 마세요. 패턴, --*.enabled--rest.disabled및 --graphql.disabled--mcp.disabled 옵션 로그 경고를 선호하며 이후 버전에서 제거될 예정입니다.
-c, --config
출력 구성 파일 이름입니다. 기본값은 dab-config.json입니다.
Example
결과 구성
{
"data-source": {
"database-type": "mssql",
"connection-string": ""
}
}
--auth.audience
JWT(JSON Web Token) 대상 그룹 클레임입니다.
Example
결과 구성
{
"runtime": {
"host": {
"authentication": {
"jwt": {
"audience": "https://example.com/api"
}
}
}
}
}
--auth.issuer
JWT(JSON Web Token) 발급자 클레임입니다.
Example
dab init \
--database-type mssql \
--auth.issuer "https://login.microsoftonline.com/{tenant-id}/v2.0"
결과 구성
{
"runtime": {
"host": {
"authentication": {
"jwt": {
"issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
}
}
}
}
}
--auth.provider
ID 공급자입니다. 기본값은 Unauthenticated입니다.
활성 상태인 경우 Unauthenticated DAB는 JWT를 검사하거나 유효성을 검사하지 않습니다. 모든 요청은 .로 anonymous실행됩니다. 다른 서비스는 DAB에 도달하기 전에 요청을 인증하거나 필터링할 수 있지만 DAB는 여전히 .로 anonymous만 권한을 부여합니다. 다른 공급자를 사용하려면 명시적으로 설정합니다.
구성 지침은 인증되지 않은 공급자 구성을 참조하세요.
비고
이 섹션에 설명된 Data API Builder 2.0 기능은 현재 미리 보기 상태이며 일반 공급 전에 변경될 수 있습니다. 자세한 내용은 버전 2.0의 새로운 기능입니다.
유효한 값: Unauthenticated,StaticWebApps, EntraID, AzureADAppService, SimulatorCustom.
중요합니다
이외의 공급자 , 및 필요 --auth.audience 및 Simulator--auth.issuer.UnauthenticatedStaticWebApps
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"
결과 구성
{
"runtime": {
"host": {
"authentication": {
"provider": "AzureAD",
"jwt": {
"audience": "https://example.com/api",
"issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
}
}
}
}
}
--connection-string
데이터베이스 연결 문자열입니다.
@env()지원합니다.
Example
결과 구성
{
"data-source": {
"connection-string": "@env('MSSQL_CONNECTION_STRING')"
}
}
--cors-origin
허용된 원본의 쉼표로 구분된 목록입니다.
Example
dab init \
--database-type mssql \
--cors-origin "https://app.example.com,https://admin.example.com"
결과 구성
{
"runtime": {
"host": {
"cors": {
"origins": [ "https://app.example.com", "https://admin.example.com" ]
}
}
}
}
--cosmosdb_nosql-container
Cosmos DB NoSQL 컨테이너 이름입니다.
Example
결과 구성
{
"data-source": {
"database-type": "cosmosdb_nosql",
"options": {
"container": "MyContainer"
}
}
}
--cosmosdb_nosql-database
Cosmos DB NoSQL 데이터베이스 이름입니다. 에 필요합니다 cosmosdb_nosql.
Example
결과 구성
{
"data-source": {
"database-type": "cosmosdb_nosql",
"options": {
"database": "MyDb"
}
}
}
--database-type
대상 데이터베이스 엔진을 지정합니다. 지원되는 값: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql.
Example
결과 구성
{
"data-source": {
"database-type": "mssql"
}
}
--graphql.disabled
Deprecated. GraphQL을 사용하지 않도록 설정합니다. 를 선호합니다 --graphql.enabled false.
--graphql.enabled
GraphQL 엔드포인트를 사용하도록 설정합니다. 기본값은 true입니다.
Example
결과 구성
{
"runtime": {
"graphql": {
"enabled": false
}
}
}
--graphql.multiple-create.enabled
단일 변형에서 여러 행을 만들 수 있습니다. 기본값은 false입니다.
Example
결과 구성
{
"runtime": {
"graphql": {
"multiple-mutations": {
"create": { "enabled": true }
}
}
}
}
--graphql.path
GraphQL 엔드포인트 접두사입니다. 기본값은 /graphql입니다.
Example
결과 구성
{
"runtime": {
"graphql": {
"path": "/gql"
}
}
}
--graphql-schema
GraphQL 스키마 파일의 경로입니다. 에 필요합니다 cosmosdb_nosql.
Example
결과 구성
{
"data-source": {
"database-type": "cosmosdb_nosql",
"options": {
"schema": "./schema.gql"
}
}
}
--host-mode
호스트 모드입니다. 기본값은 Production입니다.
유효한 값: Development, Production.
Example
결과 구성
{
"runtime": {
"host": {
"mode": "development"
}
}
}
--mcp.aggregate-records.query-timeout
집계 레코드 MCP 도구에 대한 실행 시간 제한(초)입니다. 기본값은 30입니다. 범위: 1–600.
Example
결과 구성
{
"runtime": {
"mcp": {
"dml-tools": {
"aggregate-records": {
"query-timeout": 60
}
}
}
}
}
--mcp.disabled
Deprecated. MCP를 사용하지 않도록 설정합니다. 를 선호합니다 --mcp.enabled false.
--mcp.enabled
MCP 엔드포인트를 사용하도록 설정합니다. 기본값은 true입니다.
Example
결과 구성
{
"runtime": {
"mcp": {
"enabled": false
}
}
}
--mcp.path
MCP 엔드포인트 접두사입니다. 기본값은 /mcp입니다.
Example
결과 구성
{
"runtime": {
"mcp": {
"path": "/model"
}
}
}
--rest.disabled
Deprecated. REST를 사용하지 않도록 설정합니다. 를 선호합니다 --rest.enabled false.
--rest.enabled
REST 엔드포인트를 사용하도록 설정합니다. 기본값은 true입니다.
Example
결과 구성
{
"runtime": {
"rest": {
"enabled": false
}
}
}
--rest.path
REST 엔드포인트 접두사입니다. 기본값은 /api입니다.
비고
에 대해 cosmosdb_nosql무시됩니다.
Example
결과 구성
{
"runtime": {
"rest": {
"path": "/rest"
}
}
}
--rest.request-body-strict
요청 본문의 추가 필드 처리를 제어합니다. 기본값은 false입니다.
-
true: 불필요한 필드(HTTP 400)를 거부합니다. -
false: 추가 필드를 무시합니다.
비고
에 대해 cosmosdb_nosql무시됩니다.
Example
결과 구성
{
"runtime": {
"rest": {
"request-body-strict": false
}
}
}
--runtime.base-route
모든 엔드포인트 앞에 추가된 전역 접두사입니다. 으로 /시작해야 합니다.
중요합니다
이 옵션을 사용하려면 인증 공급자가 있어야 합니다 StaticWebApps. 를 함께 --runtime.base-route설정합니다--auth.provider StaticWebApps.
Example
dab init \
--database-type mssql \
--auth.provider StaticWebApps \
--runtime.base-route /v1
결과 구성
{
"runtime": {
"base-route": "/v1"
}
}
--set-session-context
세션 컨텍스트를 사용하여 SQL Server로 데이터를 보낼 수 있습니다. 에만 유효합니다 mssql. 기본값은 false입니다.
Example
결과 구성
{
"data-source": {
"database-type": "mssql",
"options": {
"set-session-context": true
}
}
}