Azure Veri Kataloğu geliştirici kavramları
Önemli
Azure Veri Kataloğu 15 Mayıs 2024'te kullanımdan kaldırılıyor.
Yeni Azure Veri Kataloğu hesapları artık oluşturulamaz.
Veri kataloğu özellikleri için lütfen tüm veri varlığınız için birleşik veri idaresi sunan Microsoft Purview hizmetini kullanın.
Azure Veri Kataloğu kullanıyorsanız, kuruluşunuzun 15 Mayıs 2024'e kadar Microsoft Purview'a geçmesi için bir geçiş planı oluşturmanız gerekir.
Microsoft Azure Veri Kataloğu, veri kaynağı bulma ve kitle kaynağı veri kaynağı meta verileri için özellikler sağlayan, tam olarak yönetilen bir bulut hizmetidir. Geliştiriciler rest API'leri aracılığıyla hizmeti kullanabilir. Hizmette uygulanan kavramları anlamak, geliştiricilerin Azure Veri Kataloğu ile başarıyla tümleştirilmesi açısından önemlidir.
Temel kavramlar
Azure Veri Kataloğu kavramsal modeli dört temel kavramı temel alır: Katalog, Kullanıcılar, Varlıklar ve Ek Açıklamalar.
Katalog
Katalog, bir kuruluşun depo yaptığı tüm meta veriler için en üst düzey kapsayıcıdır. Azure Hesabı başına bir Kataloğa izin verilir. Kataloglar bir Azure aboneliğine bağlıdır, ancak bir hesabın birden çok aboneliği olsa bile belirli bir Azure hesabı için yalnızca bir Katalog oluşturulabilir.
KatalogDa Kullanıcılar ve Varlıklar bulunur.
Kullanıcılar
Kullanıcılar , Katalog'da eylem gerçekleştirme (katalogda arama yapma, öğeleri ekleme, düzenleme veya kaldırma vb.) izinleri olan güvenlik sorumlularıdır.
Bir kullanıcının sahip olabileceği birkaç farklı rol vardır. Roller hakkında bilgi için Roller ve Yetkilendirme bölümüne bakın.
Tek tek kullanıcılar ve güvenlik grupları eklenebilir.
Azure Veri Kataloğu kimlik ve erişim yönetimi için Microsoft Entra Id kullanır. Her Katalog kullanıcısı, hesap için Active Directory'nin bir üyesi olmalıdır.
Varlıklar
Katalog veri varlıkları içerir. Varlıklar , katalog tarafından yönetilen ayrıntı düzeyi birimidir.
Bir varlığın ayrıntı düzeyi veri kaynağına göre değişir. SQL Server veya Oracle Veritabanı için bir varlık Tablo veya Görünüm olabilir. SQL Server Analysis Services için bir varlık Ölçü, Boyut veya Anahtar Performans Göstergesi (KPI) olabilir. SQL Server Reporting Services için varlık bir Rapordur.
Varlık, Katalog'a eklediğiniz veya katalogdan kaldırdığınız öğedir. Arama'dan geri alabileceğiniz sonuç birimidir.
Varlık adından, konumundan, türünden ve bunu daha ayrıntılı açıklayan ek açıklamalardan oluşur.
Ek Açıklamalar
Ek açıklamalar, Varlıklar hakkındaki meta verileri temsil eden öğelerdir.
Açıklama, etiketler, şema, belgeler vb. ek açıklamalara örnek olarak verilebilir. Varlık türlerinin ve ek açıklama türlerinin tam listesi için Varlık Nesnesi modeli bölümüne bakın.
Crowdsourcing ek açıklamaları ve kullanıcı perspektifi (görüş çokluğu)
Azure Veri Kataloğu'nin önemli bir yönü, sistemdeki meta verilerin kitle kaynağını nasıl desteklediğidir. Wiki yaklaşımının aksine, tek bir görüş olduğu ve son yazarın kazandığı wiki yaklaşımının aksine Azure Veri Kataloğu modeli, birden çok fikrin sistemde yan yana yaşamasını sağlar.
Bu yaklaşım, farklı kullanıcıların belirli bir varlık üzerinde farklı bakış açılarına sahip olabileceği kurumsal verilerin gerçek dünyasını yansıtır:
- Veritabanı yöneticisi hizmet düzeyi sözleşmeleri veya toplu ETL işlemleri için kullanılabilir işleme penceresi hakkında bilgi sağlayabilir
- Veri temsilcisi, varlığın uygulandığı iş süreçleri veya işletmenin ona uyguladığı sınıflandırmalar hakkında bilgi sağlayabilir
- Finans analisti, verilerin dönem sonu raporlama görevleri sırasında nasıl kullanıldığı hakkında bilgi sağlayabilir
Bu örneği desteklemek için, her kullanıcı (DBA, veri temsilcisi ve analist) Katalog'a kaydedilmiş tek bir tabloya açıklama ekleyebilir. Tüm açıklamalar sistemde tutulur ve Azure Veri Kataloğu portalında tüm açıklamalar görüntülenir.
Bu desen nesne modelindeki öğelerin çoğuna uygulanır, bu nedenle JSON yükündeki nesne türleri genellikle tekil bekleyebileceğiniz özelliklere yönelik dizilerdir.
Örneğin, varlık kökü altında bir açıklama nesneleri dizisi yer alır. Dizi özelliği "descriptions" olarak adlandırılır. Açıklama nesnesinin bir özelliği vardır: description. Desen, açıklama yazan her kullanıcının, kullanıcı tarafından sağlanan değer için oluşturulmuş bir açıklama nesnesi almasıdır.
UX daha sonra bileşimin nasıl görüntüleneceğini seçebilir. Görüntüleme için üç farklı desen vardır.
- En basit desen "Tümünü Göster"dir. Bu düzende, tüm nesneler liste görünümünde gösterilir. Azure Veri Kataloğu portalı UX, açıklama için bu düzeni kullanır.
- Bir diğer desen de "Birleştirme"dir. Bu düzende, farklı kullanıcılardaki tüm değerler birleştirilir ve yinelenen değerler kaldırılır. Azure Veri Kataloğu portalı UX'sindeki bu desene örnek olarak etiketler ve uzman özellikleri verilebilir.
- Üçüncü bir desen ise "son yazar kazanır". Bu düzende, yalnızca en son yazılan değer gösterilir. friendlyName bu desenin bir örneğidir.
Varlık nesne modeli
Temel Kavramlar bölümünde açıklandığı gibi, Azure Veri Kataloğu nesne modeli varlıklar veya ek açıklamalar olabilecek öğeler içerir. Öğelerin isteğe bağlı veya gerekli olabilecek özellikleri vardır. Bazı özellikler tüm öğelere uygulanır. Bazı özellikler tüm varlıklara uygulanır. Bazı özellikler yalnızca belirli varlık türleri için geçerlidir.
Sistem özellikleri
Özellik adı | Veri türü | Açıklamalar |
---|---|---|
timestamp | DateTime | Öğenin en son değiştirildiği zaman. Bu alan, bir öğe eklendiğinde ve bir öğe her güncelleştirildiğinde sunucu tarafından oluşturulur. Bu özelliğin değeri yayımlama işlemlerinin girişinde yoksayılır. |
Kimlik | Uri | Öğenin mutlak URL'si (salt okunur). Öğe için benzersiz adreslenebilir URI'dir. Bu özelliğin değeri yayımlama işlemlerinin girişinde yoksayılır. |
Tür | String | Varlığın türü (salt okunur). |
etag | String | Katalogdaki öğeleri güncelleştiren işlemler gerçekleştirilirken iyimser eşzamanlılık denetimi için kullanılabilecek öğenin sürümüne karşılık gelen bir dize. "*" herhangi bir değerle eşleştirmek için kullanılabilir. |
Ortak özellikler
Bu özellikler tüm kök varlık türlerine ve tüm ek açıklama türlerine uygulanır.
Özellik adı | Veri türü | Açıklamalar |
---|---|---|
fromSourceSystem | Boolean | Öğenin verilerinin bir kaynak sistemden mi (SQL Server Veritabanı, Oracle Veritabanı gibi) türetilmiş olduğunu veya bir kullanıcı tarafından yazılıp yazılmadığını gösterir. |
Ortak kök özellikler
Bu özellikler tüm kök varlık türleri için geçerlidir.
Özellik adı | Veri türü | Açıklamalar |
---|---|---|
Adı | String | Veri kaynağı konum bilgilerinden türetilmiş bir ad |
Dsl | DataSourceLocation | Veri kaynağını benzersiz olarak açıklar ve varlığın tanımlayıcılarından biridir. (Bkz. çift kimlik bölümü). DSL'nin yapısı protokole ve kaynak türüne göre değişir. |
Datasource | DataSourceInfo | Varlığın türü hakkında daha fazla ayrıntı. |
lastRegisteredBy | Securityprincipal | Bu varlığı en son kaydeden kullanıcıyı açıklar. Hem kullanıcının benzersiz kimliğini (upn) hem de görünen adı (lastName ve firstName) içerir. |
containerID | String | Veri kaynağı için kapsayıcı varlığının kimliği. Bu özellik Kapsayıcı türü için desteklenmez. |
Yaygın tekil olmayan ek açıklama özellikleri
Bu özellikler, tekil olmayan tüm ek açıklama türlerine (varlık başına birden çok olması izin verilen ek açıklamalar) uygulanır.
Özellik adı | Veri türü | Açıklamalar |
---|---|---|
anahtar | String | Geçerli koleksiyondaki ek açıklamayı benzersiz olarak tanımlayan kullanıcı tarafından belirtilen anahtar. Anahtar uzunluğu 256 karakteri aşamaz. |
Kök varlık türleri
Kök varlık türleri, kataloğa kaydedilebilen çeşitli veri varlıklarını temsil eden türlerdir. Her kök türü için, görünüme dahil edilen varlığı ve ek açıklamaları açıklayan bir görünüm vardır. REST API kullanarak bir varlık yayımlanırken ilgili {view_name} url kesiminde görünüm adı kullanılmalıdır.
Varlık türü (görünüm adı) | Diğer özellikler | Veri türü | İzin verilen ek açıklamalar | Açıklamalar |
---|---|---|---|---|
Tablo ("tablolar") | Açıklama | Tablo tüm tablo verilerini temsil eder. Örneğin: SQL Tablosu, SQL Görünümü, Analysis Services Tablolu Tablosu, Analysis Services Çok Boyutlu Boyut, Oracle Tablosu vb. | ||
Friendlyname | ||||
Etiket | ||||
Şema | ||||
ColumnDescription | ||||
ColumnTag | ||||
Uzman | ||||
Önizle | ||||
AccessInstruction | ||||
TableDataProfile | ||||
ColumnDataProfile | ||||
ColumnDataClassification | ||||
Belgeler | ||||
Ölçü ("ölçüler") | Açıklama | Bu tür bir Analysis Services ölçüsünü temsil eder. | ||
Friendlyname | ||||
Etiket | ||||
Uzman | ||||
AccessInstruction | ||||
Belgeler | ||||
ölçü | Sütun | Ölçüyü açıklayan meta veriler. | ||
isCalculated | Boolean | Ölçünün hesaplanmış olup olmadığını belirtir. | ||
Measuregroup | String | Ölçünün hesaplanmış olup olmadığını belirtir. | ||
KPI ("kpis") | Açıklama | |||
Friendlyname | ||||
Etiket | ||||
Uzman | ||||
AccessInstruction | ||||
Belgeler | ||||
Measuregroup | String | Ölçü için fiziksel kapsayıcı. | ||
goalExpression | String | MDX sayısal ifadesi veya KPI'nın hedef değerini döndüren bir hesaplama. | ||
valueExpression | String | KPI'nın gerçek değerini döndüren bir MDX sayısal ifadesi. | ||
statusExpression | String | Belirli bir noktada KPI'nın durumunu temsil eden bir MDX ifadesi. | ||
trendExpression | String | Zaman içinde KPI değerini değerlendiren bir MDX ifadesi. Eğilim, belirli bir iş bağlamında yararlı olan zamana dayalı herhangi bir ölçüt olabilir. | ||
Rapor ("raporlar") | Açıklama | Bu tür bir SQL Server Reporting Services raporunu temsil eder. | ||
Friendlyname | ||||
Etiket | ||||
Uzman | ||||
AccessInstruction | ||||
Belgeler | ||||
assetCreatedDate | String | |||
assetCreatedDate | String | |||
assetModifiedDate | String | |||
assetModifiedBy | String | |||
Rapor ("raporlar") | Açıklama | Bu tür SQL veritabanı, Azure Blobs kapsayıcısı veya Analysis Services modeli gibi diğer varlıkların kapsayıcılarını temsil eder. | ||
Etiket | ||||
Uzman | ||||
AccessInstruction | ||||
Belgeler |
Ek açıklama türleri
Ek açıklama türleri, katalogdaki diğer türlere atanabilecek meta veri türlerini temsil eder.
Ek açıklama türü (iç içe görünüm adı) | Diğer özellikler | Veri türü | Açıklamalar |
---|---|---|---|
Açıklama ("açıklamalar") | Bu özellik, bir varlık için bir açıklama içerir. Sistemin her kullanıcısı kendi açıklamasını ekleyebilir. Description nesnesini yalnızca bu kullanıcı düzenleyebilir. (Yönetici s ve Varlık sahipleri Description nesnesini silebilir ancak düzenleyemez). Sistem, kullanıcıların açıklamalarını ayrı olarak korur. Bu nedenle, her varlıkta bir dizi açıklama vardır (varlık hakkında bilgisine katkıda bulunan her kullanıcı için bir açıklama dizisidir ve veri kaynağından türetilmiş bilgileri içeren bir tane de olabilir). | ||
açıklama | Dize | Varlığın kısa açıklaması (2-3 satır). | |
Etiket ("etiketler") | Bu özellik, bir varlık için bir etiket tanımlar. Sistemin her kullanıcısı bir varlık için birden çok etiket ekleyebilir. Yalnızca Etiket nesnelerini oluşturan kullanıcı bunları düzenleyebilir. (Yönetici s ve Varlık sahipleri Tag nesnesini silebilir ancak düzenleyemez). Sistem, kullanıcıların etiketlerini ayrı olarak korur. Bu nedenle, her varlıkta bir dizi Tag nesnesi vardır. | ||
etiket | Dize | Varlığı açıklayan etiket. | |
FriendlyName ("friendlyName") | Bu özellik, bir varlık için kolay bir ad içerir. FriendlyName tekil bir ek açıklamadır. Bir varlığa yalnızca bir FriendlyName eklenebilir. Yalnızca FriendlyName nesnesini oluşturan kullanıcı düzenleyebilir. (Yönetici ve Varlık sahipleri FriendlyName nesnesini silebilir ancak düzenleyemez). Sistem, kullanıcıların kolay adlarını ayrı olarak korur. | ||
Friendlyname | Dize | Varlığın kolay adı. | |
FriendlyName ("friendlyName") | Bu özellik, bir varlık için kolay bir ad içerir. FriendlyName tekil bir ek açıklamadır. Bir varlığa yalnızca bir FriendlyName eklenebilir. Yalnızca FriendlyName nesnesini oluşturan kullanıcı düzenleyebilir. (Yönetici ve Varlık sahipleri FriendlyName nesnesini silebilir ancak düzenleyemez). Sistem, kullanıcıların kolay adlarını ayrı olarak korur. | ||
Friendlyname | Dize | Varlığın kolay adı. | |
Şema ("şema") | Şema, verilerin yapısını açıklar. Öznitelik (sütun, öznitelik, alan vb.) adlarını, türlerini ve diğer meta verileri listeler. Bu bilgilerin tümü veri kaynağından türetilir. Şema tekil bir ek açıklamadır. Bir varlık için yalnızca bir Şema eklenebilir. | ||
sütunlar | Sütun[] | Sütun nesneleri dizisi. Veri kaynağından türetilen bilgileri içeren sütunu açıklar. | |
ColumnDescription ("columnDescriptions") | Bu özellik bir sütun için açıklama içerir. Sistemin her kullanıcısı birden çok sütun için kendi açıklamalarını ekleyebilir (sütun başına en fazla bir tane). Yalnızca ColumnDescription nesnelerini oluşturan kullanıcı bunları düzenleyebilir. (Yönetici s ve Varlık sahipleri ColumnDescription nesnesini silebilir ancak düzenleyemez). Sistem, bu kullanıcının sütun açıklamalarını ayrı olarak tutar. Bu nedenle, her varlıkta bir ColumnDescription nesneleri dizisi vardır (sütun hakkında bilgisine katkıda bulunan her kullanıcı için sütun başına bir tane, veri kaynağından türetilen bilgileri içeren bir taneye ek olarak). ColumnDescription, eşitlenmemiş durumdan çıkabilmesi için şemaya gevşek bir şekilde bağlıdır. ColumnDescription, şemada artık mevcut olmayan bir sütunu açıklayabilir. Açıklamayı ve şemayı eşitlenmiş olarak tutmak yazıcıya bağlı. Veri kaynağında sütun açıklaması bilgileri de olabilir ve bunlar aracı çalıştırırken oluşturulabilecek diğer ColumnDescription nesneleridir. | ||
Columnname | String | Bu açıklamanın başvurduğu sütunun adı. | |
açıklama | String | Sütunun kısa açıklaması (2-3 satır). | |
ColumnTag ("columnTags") | Bu özellik bir sütun için etiket içerir. Sistemin her kullanıcısı belirli bir sütun için birden çok etiket ekleyebilir ve birden çok sütun için etiketler ekleyebilir. Yalnızca ColumnTag nesneleri oluşturan kullanıcı bunları düzenleyebilir. (Yönetici s ve Varlık sahipleri ColumnTag nesnesini silebilir ancak düzenleyemez). Sistem, bu kullanıcıların sütun etiketlerini ayrı olarak korur. Bu nedenle her varlıkta bir ColumnTag nesneleri dizisi vardır. ColumnTag, eşitlenmemiş durumdan çıkabilmesi için şemaya gevşek bir şekilde bağlıdır. ColumnTag, şemada artık mevcut olmayan bir sütunu açıklayabilir. Sütun etiketi ve şemayı eşitlenmiş durumda tutmak yazıcıya bağlı. | ||
Columnname | String | Bu etiketin başvurduğu sütunun adı. | |
etiket | String | Sütunu açıklayan etiket. | |
Uzman ("uzmanlar") | Bu özellik, veri kümesinde uzman olarak kabul edilen bir kullanıcı içerir. Açıklamaları listelerken uzmanların görüşleri (açıklamalar) UX'in en üstüne kadar kabarır. Her kullanıcı kendi uzmanlarını belirtebilir. Uzmanların nesnesini yalnızca bu kullanıcı düzenleyebilir. (Yönetici ve Varlık sahipleri Uzman nesnelerini silebilir ancak düzenleyemez.) | ||
Uzman | Securityprincipal | ||
Önizleme ("önizlemeler") | Önizleme, varlık için ilk 20 veri satırının anlık görüntüsünü içerir. Önizleme yalnızca bazı varlık türleri için anlamlıdır (Tablo için mantıklıdır ancak Ölçü için anlamlı değildir). | ||
preview | object[] | Bir sütunu temsil eden nesne dizisi. Her nesnenin, satır için bu sütun için bir değere sahip bir sütuna yönelik bir özellik eşlemesi vardır. | |
AccessInstruction ("accessInstructions") | |||
Mimetype | Dize | İçeriğin mime türü. | |
content | Dize | Bu veri varlığına erişme yönergeleri. İçerik bir URL, e-posta adresi veya yönergeler kümesi olabilir. | |
TableDataProfile ("tableDataProfiles") | |||
numberOfRows | int | Veri kümesindeki satır sayısı. | |
size | uzun | Veri kümesinin bayt cinsinden boyutu. | |
schemaModifiedTime | Dize | Şemanın en son değiştirildiği zaman. | |
dataModifiedTime | Dize | Veri kümesinin en son değiştirildiği zaman (veriler eklendi, değiştirildi veya silindi). | |
ColumnsDataProfile ("columnsDataProfiles") | |||
sütunlar | ColumnDataProfile[] | Sütun veri profilleri dizisi. | |
ColumnDataClassification ("columnDataClassifications") | |||
Columnname | String | Bu sınıflandırmanın başvurduğu sütunun adı. | |
sınıflandırma | String | Bu sütundaki verilerin sınıflandırması. | |
Belgeler ("belgeler") | Belirli bir varlıkla ilişkilendirilmiş yalnızca bir belge olabilir. | ||
Mimetype | Dize | İçeriğin mime türü. | |
content | Dize | Belge içeriği. |
Yaygın türler
Ortak türler özellikler için türler olarak kullanılabilir, ancak Öğeler değildir.
Ortak tür | Properties | Veri türü | Açıklamalar |
---|---|---|---|
DataSourceInfo | Sourcetype | Dize | Veri kaynağının türünü açıklar. Örneğin: SQL Server, Oracle Veritabanı vb. |
Nesnetürü | Dize | Veri kaynağındaki nesne türünü açıklar. Örneğin: TABLO, SQL Server için Görünüm. | |
DataSourceLocation | Protokolü | Dize | Gerekli. Veri kaynağıyla iletişim kurmak için kullanılan bir protokolü açıklar. Örneğin: tds SQL Server, oracle Oracle vb. için şu anda desteklenen protokollerin listesi için Veri kaynağı başvuru belirtimi - DSL Yapısı'na bakın. |
adres | Sözlük<dizesi,nesne> | Gerekli. Adres, başvurulmakta olan veri kaynağını tanımlamak için kullanılan protokole özgü bir veri kümesidir. Adres verilerinin kapsamı belirli bir protokole göre belirlenmiştir, yani protokol bilinmeden anlamsızdır. | |
kimlik doğrulaması | Dize | isteğe bağlı. Veri kaynağıyla iletişim kurmak için kullanılan kimlik doğrulama düzeni. Örneğin: windows, oauth vb. | |
Connectionproperties | Sözlük<dizesi,nesne> | isteğe bağlı. Bir veri kaynağına bağlanma hakkında ek bilgiler. | |
DataSourceLocation | Arka uç, yayımlama sırasında Sağlanan özelliklerin Microsoft Entra Id ile doğrulanması işlemini gerçekleştirmez. | ||
upn | Dize | Gerekli. Kullanıcının benzersiz e-posta adresi. objectId sağlanmamışsa veya "lastRegisteredBy" özelliği bağlamında belirtilmelidir, aksi takdirde isteğe bağlıdır. | |
objectId | GUID | isteğe bağlı. Kullanıcı veya güvenlik grubu Microsoft Entra kimliği. isteğe bağlı. Upn sağlanmamışsa belirtilmelidir, aksi takdirde isteğe bağlıdır. | |
firstName | Dize | Kullanıcının adı (görüntüleme amacıyla). isteğe bağlı. Yalnızca "lastRegisteredBy" özelliği bağlamında geçerlidir. "Roller", "izinler" ve "uzmanlar" için güvenlik sorumlusu sağlanırken belirtilemiyor. | |
lastName | Dize | Kullanıcının soyadı (görüntüleme amacıyla). isteğe bağlı. Yalnızca "lastRegisteredBy" özelliği bağlamında geçerlidir. "Roller", "izinler" ve "uzmanlar" için güvenlik sorumlusu sağlanırken belirtilemiyor. | |
Sütun | Adı | Dize | Sütun veya özniteliğin adı. |
Tür | Dize | Sütun veya özniteliğin veri türü. İzin Verilebilen türler varlığın veri kaynağı Türüne bağlıdır. Türlerin yalnızca bir alt kümesi desteklenir. | |
Maxlength | int | Sütun veya öznitelik için izin verilen uzunluk üst sınırı. Veri kaynağından türetilir. Yalnızca bazı kaynak türleri için geçerlidir. | |
duyarlık | int | Sütun veya özniteliğin duyarlığı. Veri kaynağından türetilir. Yalnızca bazı kaynak türleri için geçerlidir. | |
ısnullable | ısnullable | Sütunun null değere sahip olmasına izin verilip verilmeyeceği. Veri kaynağından türetilir. Yalnızca bazı kaynak türleri için geçerlidir. | |
ifade | Dize | Değer hesaplanmış bir sütunsa, bu alan değeri ifade eden ifadeyi içerir. Veri kaynağından türetilir. Yalnızca bazı kaynak türleri için geçerlidir. | |
ColumnDataProfile | Columnname | Dize | Sütunun adı. |
Tür | Dize | Sütunun türü. | |
dk | Dize | Veri kümesindeki en düşük değer. | |
max | Dize | Veri kümesindeki en büyük değer. | |
ort | çift | Veri kümesindeki ortalama değer. | |
Stdev | çift | Veri kümesi için standart sapma | |
nullCount | int | Veri kümesindeki null değerlerin sayısı. | |
Distinctcount | int | Veri kümesindeki ayrı değerlerin sayısı. |
Varlık kimliği
Azure Veri Kataloğu, Varlığın kimliğini oluşturmak için DataSourceLocation "dsl" özelliğinin "address" özellik paketindeki "protokol" ve kimlik özelliklerini kullanır. Bu özellik, Kataloğun içindeki varlığı ele almak için kullanılır. Örneğin, Tablosal Veri Akışı (TDS) protokolü "sunucu", "veritabanı", "şema" ve "nesne" kimlik özelliklerine sahiptir. PROTOKOL ve kimlik özelliklerinin birleşimleri, SQL Server Tablo Varlığının kimliğini oluşturmak için kullanılır. Azure Veri Kataloğu, Veri kaynağı başvuru belirtimi - DSL Yapısı bölümünde listelenen çeşitli yerleşik veri kaynağı protokolleri sağlar. Desteklenen protokol kümesi program aracılığıyla genişletilebilir (REST API başvurusu Veri Kataloğu bakın). Kataloğun Yönetici istrator'ları özel veri kaynağı protokollerini kaydedebilir. Aşağıdaki tabloda, özel bir protokolü kaydetmek için gereken özellikler açıklanmaktadır.
Özel veri kaynağı protokolü belirtimi
Üç farklı tür veri kaynağı protokolü belirtimi vardır. Aşağıda, türleri ve ardından özelliklerini içeren bir tablo listelenmiştir.
DataSourceProtocol
Properties | Veri türü | Açıklamalar |
---|---|---|
ad alanı | Dize | Protokolün ad alanı. Ad alanı 1 ila 255 karakter uzunluğunda olmalı, nokta (.) ile ayrılmış bir veya daha fazla boş olmayan bölüm içermelidir. Her parça 1 ila 255 karakter uzunluğunda olmalı, bir harfle başlamalıdır ve yalnızca harf ve sayı içermelidir. |
Adı | Dize | Protokolün adı. Ad 1 ile 255 karakter uzunluğunda olmalı, harfle başlamalıdır ve yalnızca harf, sayı ve tire (-) karakteri içermelidir. |
identityProperties | DataSourceProtocolIdentityProperty[] | Kimlik özellikleri listesi en az bir tane içermelidir, ancak en fazla 20 özellik içermelidir. Örneğin: "server", "database", "schema", "object", "tds" protokolünün kimlik özellikleridir. |
identitySets | DataSourceProtocolIdentitySet[] | Kimlik kümelerinin listesi. Geçerli varlığın kimliğini temsil eden kimlik özellikleri kümelerini tanımlar. En az bir küme içermelidir, ancak en fazla 20 küme içermelidir. Örneğin: {"server", "database", "schema" ve "object"}, TDS protokolü için SQL Server Tablo varlığının kimliğini tanımlayan bir kimlik kümesidir. |
DataSourceProtocolIdentityProperty
Properties | Veri türü | Açıklamalar |
---|---|---|
Adı | Dize | Özelliğin adı. Ad 1 ile 100 karakter uzunluğunda olmalı, harfle başlamalıdır ve yalnızca harf ve sayı içerebilir. |
Tür | Dize | Özelliğin türü. Desteklenen değerler: "bool", boolean", "bayt", "guid", "int", "integer", "long", "string", "url" |
Ignorecase | ikili | Özelliğin değeri kullanılırken büyük/küçük harf yoksayılıp yoksayılmayacağını gösterir. Yalnızca "dize" türüne sahip özellikler için belirtilebilir. Varsayılan değer yanlış'tır. |
urlPathSegmentsIgnoreCase | bool[] | Url yolunun her kesimi için büyük/küçük harf yoksayılıp yoksayılmayacağını gösterir. Yalnızca "url" türüne sahip özellikler için belirtilebilir. Varsayılan değer :[false]. |
DataSourceProtocolIdentitySet
Properties | Veri türü | Açıklamalar |
---|---|---|
Adı | Dize | Kimlik kümesinin adı. |
özellikler | string[] | Bu kimlik kümesine dahil edilen kimlik özelliklerinin listesi. Yinelenenleri içeremez. Kimlik kümesi tarafından başvuruda bulunılan her özellik, protokolün "identityProperties" listesinde tanımlanmalıdır. |
Roller ve yetkilendirme
Microsoft Azure Veri Kataloğu varlıklar ve ek açıklamalar üzerinde CRUD işlemleri için yetkilendirme özellikleri sağlar.
Azure Veri Kataloğu iki yetkilendirme mekanizması kullanır:
- Rol tabanlı yetkilendirme
- İzin tabanlı yetkilendirme
Roller
Üç rol vardır: Yönetici istrator, Sahip ve Katkıda Bulunan. Her rolün kapsamı ve hakları vardır ve bunlar aşağıdaki tabloda özetlenir.
Role | Kapsam | Haklar |
---|---|---|
Yönetici | Katalog (Katalogdaki tüm varlıklar/ek açıklamalar) | Okuma, Silme, ViewRoles, ChangeOwnership, ChangeVisibility, ViewPermissions |
Sahip | Her varlık (kök öğe) | Okuma, Silme, ViewRoles, ChangeOwnership, ChangeVisibility, ViewPermissions |
Katılımcı | Her bir varlık ve ek açıklama | Read*, Update, Delete, ViewRoles |
Not
*Öğedeki Okuma hakkı Katkıda Bulunan'dan iptal edilirse tüm haklar iptal edilir
Not
Okuma, Güncelleştirme, Silme, ViewRoles hakları herhangi bir öğeye (varlık veya ek açıklama) uygulanabilirken TakeOwnership, ChangeOwnership, ChangeVisibility, ViewPermissions yalnızca kök varlık için geçerlidir. Silme hakkı, bir öğeye ve altındaki alt öğelere veya tek bir öğeye uygulanır. Örneğin, bir varlığın silinmesi, bu varlığın ek açıklamalarını da siler.
İzinler
İzin, erişim denetimi girdilerinin listesidir. Her erişim denetimi girdisi bir güvenlik sorumlusuna hak kümesi atar. İzinler yalnızca bir varlıkta (kök öğe) belirtilebilir ve varlığa ve alt öğelere uygulanabilir.
Azure Veri Kataloğu önizlemesi sırasında, bir varlığın görünürlüğünü kısıtlama senaryosunun etkinleştirilmesi için izin listesinde yalnızca Okuma hakkı desteklenir.
Varsayılan olarak, görünürlük izinlerdeki sorumlu kümesiyle kısıtlanmadığı sürece, kimliği doğrulanmış herhangi bir kullanıcının katalogdaki herhangi bir öğe için Okuma hakkı vardır.
REST API
PUT ve POST görünüm öğesi istekleri rolleri ve izinleri denetlemek için kullanılabilir: öğe yüküne ek olarak iki sistem özelliği de rol ve izin belirtilebilir.
Not
izinler yalnızca kök öğe için geçerlidir. Sahip rolü yalnızca kök öğe için geçerlidir. Varsayılan olarak, katalogda bir öğe oluşturulduğunda Katkıda Bulunanı şu anda kimliği doğrulanmış olan kullanıcıya ayarlanır. Öğenin herkes tarafından güncelleştirilebilir olması gerekiyorsa, öğe ilk yayımlandığında Katkıda Bulunan, roller özelliğinde Herkes> özel güvenlik sorumlusu olarak ayarlanmalıdır <(aşağıdaki örneği inceleyin). Katkıda bulunan değiştirilemez ve öğenin yaşam süresi boyunca aynı kalır (Yönetici istrator veya Sahip bile Katkıda Bulunan'ı değiştirme hakkına sahip değildir). Katkıda Bulunan'ın açık ayarı için desteklenen tek değer Herkes>: <Katkıda Bulunan yalnızca bir öğeyi veya <Herkes'i> oluşturan bir kullanıcı olabilir.
Örnekler
Öğe yayımlarken Katkıda Bulunan'ı Herkes> olarak <ayarlayın.
Özel güvenlik sorumlusu <Herkes> "000000000-0000-0000-0000-0000-00000000201" nesne kimliğine sahiptir.
POSThttps://api.azuredatacatalog.com/catalogs/default/views/tables/?api-version=2016-03-30
Not
Bazı HTTP istemci uygulamaları, sunucudan bir 302'ye yanıt olarak istekleri otomatik olarak yeniden gönderebilir, ancak genellikle yetkilendirme üst bilgilerini istekten ayırır. Azure Veri Kataloğu istekte bulunmak için Yetkilendirme üst bilgisi gerektiğinden, Azure Veri Kataloğu tarafından belirtilen bir yeniden yönlendirme konumuna istek yeniden oluşturulurken Yetkilendirme üst bilgisinin hala sağlandığından emin olmanız gerekir. Aşağıdaki örnek kod, .NET HttpWebRequest nesnesini kullanarak bunu gösterir.
Gövde
{
"roles": [
{
"role": "Contributor",
"members": [
{
"objectId": "00000000-0000-0000-0000-000000000201"
}
]
}
]
}
Sahip atama ve mevcut kök öğe için görünürlüğü kısıtlama: PUThttps://api.azuredatacatalog.com/catalogs/default/views/tables/042297b0...1be45ecd462a?api-version=2016-03-30
{
"roles": [
{
"role": "Owner",
"members": [
{
"objectId": "c4159539-846a-45af-bdfb-58efd3772b43",
"upn": "user1@contoso.com"
},
{
"objectId": "fdabd95b-7c56-47d6-a6ba-a7c5f264533f",
"upn": "user2@contoso.com"
}
]
}
],
"permissions": [
{
"principal": {
"objectId": "27b9a0eb-bb71-4297-9f1f-c462dab7192a",
"upn": "user3@contoso.com"
},
"rights": [
{
"right": "Read"
}
]
},
{
"principal": {
"objectId": "4c8bc8ce-225c-4fcf-b09a-047030baab31",
"upn": "user4@contoso.com"
},
"rights": [
{
"right": "Read"
}
]
}
]
}
Not
PUT'de, gövdede bir öğe yükü belirtmek gerekmez: PUT yalnızca rolleri ve/veya izinleri güncelleştirmek için kullanılabilir.