Autoentities

Desen eşleştirme kurallarına göre otomatik varlık oluşturma için yapılandırma ayarları. Autoentitiesbölümün entities eşleridir; mevcut autoentities olduğunda entities artık gerekli değildir. Şema ya da autoentitiesentities (veya her ikisine) izin verir. Her ikisi de varsa, açıkça tanımlanmış varlıklar aynı ada sahip eşleşmelere göre autoentities önceliklidir.

Tavsiye

CLI'dan tanım oluşturup güncelleştirmek dab auto-config ve autoentities değişiklikleri işlemeden önce hangi nesnelerin eşleşip eşleşmediğiyle ilgili önizleme yapmak için kullanındab auto-config-simulate.

Desenler

Mülkiyet Açıklama
patterns.include Eklenecek nesneler için MSSQL LIKE desenleri
patterns.exclude Dışlanması gereken nesneler için MSSQL LIKE desenleri
patterns.name Varlık adlandırma için ilişkilendirme düzeni

Şablon

Mülkiyet Açıklama
template.rest.enabled Eşleşen varlıklar için REST'i etkinleştirme
template.graphql.enabled Eşleşen varlıklar için GraphQL'i etkinleştirme
template.mcp.dml-tools Eşleşen varlıklar için Model Bağlam Protokolü (MCP) veri işleme dili (DML) araçlarını etkinleştirme
template.health.enabled Eşleşen varlıklar için sistem durumu denetimlerini etkinleştirme
template.cache.enabled Eşleşen varlıklar için yanıt önbelleğe almayı etkinleştirme
template.cache.ttl-seconds Yaşam süresini saniyeler içinde önbelleğe alma
template.cache.level Önbellek düzeyi: L1 veya L1L2

İzinler

Mülkiyet Açıklama
permissions[].role Rol adı dizesi
permissions[].actions Bir veya daha fazla: create, read, update, deleteveya *

Biçime genel bakış

{
  "autoentities": {
    "<definition-name>": {
      "patterns": {
        "include": [ "<string>" ],    // default: ["%.%"]
        "exclude": [ "<string>" ],    // default: null
        "name": "<string>"            // default: "{schema}_{object}"
      },
      "template": {
        "rest": { "enabled": <boolean> },      // default: true
        "graphql": { "enabled": <boolean> },   // default: true
        "mcp": { "dml-tools": <boolean> },     // default: true
        "health": { "enabled": <boolean> },    // default: true
        "cache": {
          "enabled": <boolean>,                // default: false
          "ttl-seconds": <integer>,            // default: null
          "level": "<string>"                  // default: "L1L2"
        }
      },
      "permissions": [
        {
          "role": "<string>",
          "actions": [ { "action": "<string>" } ]
        }
      ]
    }
  }
}

Tanım adı (autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities <definition-name> nesne ✔️ Evet Hiçbiri

Nesnedeki autoentities her anahtar adlandırılmış bir tanımdır. Ad büyük/küçük harfe duyarlıdır ve mantıksal tanımlayıcı işlevi görür. Farklı desenlere ve izinlere sahip birden çok tanım tanımlayabilirsiniz.

Biçim

{
  "autoentities": {
    "<definition-name>": { ... }
  }
}

Example

{
  "autoentities": {
    "public-tables": {
      "patterns": { "include": [ "dbo.%" ] },
      "permissions": [ { "role": "anonymous", "actions": [ { "action": "read" } ] } ]
    },
    "admin-tables": {
      "patterns": { "include": [ "admin.%" ] },
      "permissions": [ { "role": "authenticated", "actions": [ { "action": "*" } ] } ]
    }
  }
}

Desenler (tanım-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name> patterns nesne ❌ Hayır Hiçbiri

Hangi veritabanı nesnelerinin varlık olarak kullanıma sunulduğuna karar veren dahil, dışlama ve adlandırma kurallarını tanımlar.

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.patterns include dize dizisi ❌ Hayır ["%.%"]
autoentities.<definition-name>.patterns exclude dize dizisi ❌ Hayır null
autoentities.<definition-name>.patterns name String ❌ Hayır "{schema}_{object}"
  • include—Hangi veritabanı nesnelerinin dahilleneceğini belirten bir veya daha fazla MSSQL LIKE deseni. Joker karakter olarak kullanın % . Desen biçimidir schema.object (örneğin, dbo.% şemadaki tüm nesnelerle eşleşir dbo ). Atlandığında veya atlandığında null varsayılan olarak ["%.%"] kullanılır (tüm şemalardaki tüm nesneler).

  • exclude—Hangi veritabanı nesnelerinin dışlanacağını belirten bir veya daha fazla MSSQL LIKE deseni. Dışlama desenleri, ekleme desenleri sonrasında değerlendirilir. Atlandığında veya atlandığında null , hiçbir nesne dışlanmaz.

  • name—Eşleşen veritabanı nesnelerinin varlık olarak nasıl adlandırıldığını denetleen ilişkilendirme düzeni. Ve {schema} yer tutucularını destekler{object}. Çözümlenen her ad, yapılandırmadaki tüm varlıklar arasında benzersiz olmalıdır.

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "patterns": {
        "include": [ "<string>" ],
        "exclude": [ "<string>" ],
        "name": "<string>"
      }
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ],
        "exclude": [ "dbo.internal%" ],
        "name": "{schema}_{object}"
      }
    }
  }
}

Bu yapılandırmayla, şemadaki dbo her tablo (eşleşenler dbo.internal%hariç) bir varlık olarak kullanıma sunulur. adlı tablo adlı dbo.Productsdbo_Productsbir varlık olur.

Ad (desen tanımı-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.patterns name String ❌ Hayır "{schema}_{object}"

Eşleşen veritabanı nesnelerinin varlık olarak nasıl adlandırıldıklarını denetler. İki yer tutucuyu destekler:

Yer tutucu Çözümle:
{schema} Eşleşen veritabanı nesnesinin şema adı
{object} Eşleşen veritabanı nesnesinin nesne adı

Atlandığında, varsayılan değer "{schema}_{object}" şema ve nesne adını bir alt çizgiyle birleştirir ve oluşturulan varlık adlarının şemalar arasında benzersiz kalmasına yardımcı olur.

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "patterns": {
        "name": "<string>"
      }
    }
  }
}

Örnekler

Desen Veritabanı nesnesi Varlık adı
"{schema}_{object}" dbo.Products dbo_Products
"{object}" dbo.Products Products
"{schema}.{object}" sales.Orders sales.Orders

REST (şablon tanımı-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template rest nesne ❌ Hayır Hiçbiri

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template.rest enabled Boolean ❌ Hayır true

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "template": {
        "rest": { "enabled": <boolean> }
      }
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "template": {
        "rest": { "enabled": false }
      }
    }
  }
}

GraphQL (şablon tanımı-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template graphql nesne ❌ Hayır Hiçbiri

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template.graphql enabled Boolean ❌ Hayır true

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "template": {
        "graphql": { "enabled": <boolean> }
      }
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "template": {
        "graphql": { "enabled": true }
      }
    }
  }
}

MCP (şablon tanımı-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template mcp nesne ❌ Hayır Hiçbiri

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template.mcp dml-tools Boolean ❌ Hayır true

Eşleşen tüm varlıklar için MCP veri işleme dili (DML) araçlarını etkinleştirir veya devre dışı bırakır.

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "template": {
        "mcp": { "dml-tools": <boolean> }
      }
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "template": {
        "mcp": { "dml-tools": true }
      }
    }
  }
}

Sistem durumu (şablon tanımı-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template health nesne ❌ Hayır Hiçbiri

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template.health enabled Boolean ❌ Hayır true

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "template": {
        "health": { "enabled": <boolean> }
      }
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "template": {
        "health": { "enabled": true }
      }
    }
  }
}

Önbellek (şablon tanımı-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template cache nesne ❌ Hayır Hiçbiri

Eşleşen tüm varlıklar için yanıt önbelleğe almayı etkinleştirir ve yapılandırr.

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.template.cache enabled Boolean ❌ Hayır false
autoentities.<definition-name>.template.cache ttl-seconds tamsayı ❌ Hayır null
autoentities.<definition-name>.template.cache level sabit listesi (L1 | L1L2) ❌ Hayır "L1L2"

level özelliği hangi önbellek katmanlarının kullanıldığını denetler:

Değer Açıklama
L1 Yalnızca bellek içi önbellek. En hızlı, ancak örnekler arasında paylaşılmaz.
L1L2 Bellek içi önbellek artı dağıtılmış (Redis) önbellek. Ölçeği genişletilmiş örnekler arasında paylaşılır. Varsayılan.

Uyarı

olduğunda ttl-secondsnull veya atlandığında, genel değeri öğesinden runtime.cache.ttl-secondsdevralır.

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "template": {
        "cache": {
          "enabled": <boolean>,
          "ttl-seconds": <integer>,
          "level": "<L1 | L1L2>"
        }
      }
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "template": {
        "cache": {
          "enabled": true,
          "ttl-seconds": 30,
          "level": "L1L2"
        }
      }
    }
  }
}

İzinler (tanım-adı autoentities)

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name> permissions array ❌ Hayır Hiçbiri

Bu autoentities tanımla eşleşen her varlığa uygulanan izinler. Her öğe ve dizisi olan role bir actions nesnedir.

İç içe özellikler

Ebeveyn Mülkiyet Türü Zorunlu Varsayılan
autoentities.<definition-name>.permissions[] role String ✔️ Evet Hiçbiri
autoentities.<definition-name>.permissions[] actions dizi veya dize ✔️ Evet Hiçbiri
autoentities.<definition-name>.permissions[].actions[] action String ✔️ Evet Hiçbiri

Desteklenen eylem değerleri: create, read, update, , deleteveya * (joker karakter dört CRUD eyleminin tümüne genişletilir).

Biçim

{
  "autoentities": {
    "<definition-name>": {
      "permissions": [
        {
          "role": "<string>",
          "actions": [ { "action": "<string>" } ]
        }
      ]
    }
  }
}

Example

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ]
      },
      "permissions": [
        { "role": "anonymous", "actions": [ { "action": "read" } ] },
        { "role": "authenticated", "actions": [ { "action": "*" } ] }
      ]
    }
  }
}

Tam örnek

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ],
        "exclude": [ "dbo.internal%" ],
        "name": "{schema}_{object}"
      },
      "template": {
        "rest": { "enabled": true },
        "graphql": { "enabled": true },
        "mcp": { "dml-tools": true },
        "health": { "enabled": true },
        "cache": { "enabled": true, "ttl-seconds": 30, "level": "L1L2" }
      },
      "permissions": [
        { "role": "anonymous", "actions": [ { "action": "read" } ] }
      ]
    }
  }
}

Bu yapılandırmayla, şemadaki dbo her tablo (eşleşenler dbo.internal%hariç) otomatik olarak bir DAB varlığı olarak kullanıma sunulur. Her varlık deseni kullanılarak {schema}_{object} adlandırılır (örneğin, dbo_Products), REST, GraphQL, MCP ve sistem durumu denetimleri etkindir, 30 saniyelik yaşam süresiyle önbelleğe almayı kullanır ve role erişim read veriranonymous.