Conceitos de desenvolvedor do Catálogo de Dados do Azure

Importante

O Catálogo de Dados do Azure está sendo desativado em 15 de maio de 2024.

Não é mais possível criar novas contas do Catálogo de Dados do Azure.

Para obter recursos do catálogo de dados, use o serviço Microsoft Purview que oferece governança de dados unificada para todo o seu patrimônio de dados.

Se você já estiver usando o Catálogo de Dados do Azure, precisará criar um plano de migração para sua organização se mudar para o Microsoft Purview até 15 de maio de 2024.

O Catálogo de Dados do Microsoft Azure é um serviço de nuvem totalmente gerenciado que fornece recursos para descoberta de fonte de dados e metadados de fonte de dados de crowdsourcing. Os desenvolvedores podem usar o serviço por meio de suas APIs REST. Entender os conceitos implementados no serviço é importante para os desenvolvedores integrarem com êxito o Catálogo de Dados do Azure.

Principais conceitos

O modelo conceitual do Catálogo de Dados do Azure baseia-se em quatro conceitos principais: o Catálogo, Usuários, Ativos e Anotações.

Modelo conceitual com a Conta do Azure e a Assinatura do Azure na parte superior, fluindo para o Catálogo. O catálogo flui para Usuários e Ativos e os ativos fluem para Anotações.

Catálogo

Um Catálogo é o contêiner de nível superior para todos os metadados armazenados por uma organização. Há um Catálogo alocado por conta do Azure. Catálogos estão vinculados a uma assinatura do Azure, mas somente um Catálogo pode ser criado para uma conta do Azure, mesmo que uma conta tenha várias assinaturas.

Um catálogo contém Usuários e Ativos.

Usuários

Os usuários são entidades de segurança que têm permissões para executar ações (pesquisar no catálogo, adicionar, editar ou remover itens etc.) no Catálogo.

Há várias funções de que um usuário pode ter. Para obter informações sobre funções, confira a seção Funções e a Autorização.

Usuários individuais e grupos de segurança podem ser adicionados.

O Catálogo de Dados do Azure usa o Microsoft Entra ID para gerenciamento de identidade e acesso. Cada usuário do catálogo deve ser um membro do Active Directory para a conta.

Ativos

Um Catálogo contém ativos de dados. Ativos são a unidade de granularidade gerenciada pelo catálogo.

A granularidade de um ativo varia de acordo com a fonte de dados. Para SQL Server ou Banco de Dados Oracle, um ativo pode ser uma Tabela ou Exibição. Para o SQL Server Analysis Services, um ativo pode ser uma Medida, uma Dimensão ou um KPI (Indicador de Chave de Desempenho). Para SQL Server Reporting Services, um ativo é um Relatório.

Um Ativo é o item que você adiciona ou remove de um Catálogo. Ele é a unidade do resultado obtido com a Pesquisa.

Um Ativo é composto de seu nome, local e tipo, bem como anotações que o descrevem melhor.

Anotações

As anotações são itens que representam os metadados sobre os ativos.

Exemplos de anotações são descrições, marcas, esquemas, documentações etc. Confira a seção Modelo de objeto de ativo para ver uma lista completa dos tipos de ativos e de anotações.

Anotações de crowdsourcing e perspectiva do usuário (multiplicidade de opinião)

Um aspecto importante do Catálogo de Dados do Azure é como ele dá suporte ao crowdsourcing de metadados no sistema. Em vez de uma abordagem de wiki, em que há apenas uma opinião e o último editor vence, o modelo do Catálogo de Dados do Azure permite que várias opiniões coexistam no sistema.

Essa abordagem reflete o mundo real dos dados da empresa onde diferentes usuários podem ter diferentes perspectivas sobre um determinado ativo:

  • Um administrador de banco de dados pode fornecer informações sobre contratos de nível de serviço ou a janela de processamento disponível para operações de ETL em massa
  • Um administrador de dados pode fornecer informações sobre os processos de negócios aos quais o ativo se aplica ou as classificações que a empresa aplicou a ele
  • Um analista financeiro pode fornecer informações sobre como os dados são usados durante tarefas de relatório de fim de período

Para dar suporte a esse exemplo, cada usuário (como o DBA, o administrador de dados e o analista) pode adicionar uma descrição para uma única tabela que foi registrada no Catálogo. Todas as descrições são mantidas no sistema e exibidas no portal do Catálogo de Dados do Azure.

Esse padrão é aplicado à maioria dos itens no modelo de objeto. Portanto, tipos de objeto na carga JSON normalmente sã0 matrizes para as propriedades em que você esperaria um singleton.

Por exemplo, na raiz do ativo fica uma matriz dos objetos de descrição. A propriedade de matriz é denominada "Descrições". Um objeto de descrição tem uma propriedade - descrição. O padrão é que cada usuário que digita descrição obtém um objeto de descrição criado para o valor fornecido pelo usuário.

A UX pode escolher como exibir a combinação. Existem três padrões diferentes para exibição.

  • O padrão mais simples é "Mostrar tudo". Nesse padrão, todos os objetos são mostrados em um modo de exibição de lista. A experiência do usuário do portal do Catálogo de Dados do Azure usa esse padrão para descrição.
  • Outro padrão é "Mesclar". Neste padrão, todos os valores dos diferentes usuários são mesclados, removendo valores duplicados. Exemplos desse padrão no UX do portal do Catálogo de Dados do Azure são as propriedades de marcas e especialistas.
  • Um terceiro padrão é "último editor vence". Nesse padrão é mostrado apenas o valor digitado mais recente. friendlyName é um exemplo desse padrão.

Modelo de objeto de ativo

Como apresentado na seção Conceitos Principais, o modelo de objeto Catálogo de Dados do Azure inclui itens que podem ser ativos ou anotações. Itens têm propriedades que podem ser obrigatórias ou opcionais. Algumas propriedades se aplicam a todos os itens. Algumas propriedades se aplicam a todos os ativos. Algumas propriedades se aplicam somente alguns tipos específicos de ativo.

Propriedades do sistema

Nome da propriedade Tipo de dados Comentários
timestamp Datetime A hora da última modificação do item. Esse campo é gerado pelo servidor quando um item é inserido e sempre que um item é atualizado. O valor dessa propriedade é ignorado na entrada de operações de publicação.
ID Uri URL absoluta do item (somente leitura). É o URI endereçável exclusivo do item. O valor dessa propriedade é ignorado na entrada de operações de publicação.
tipo String O tipo de ativo (somente leitura).
etag String Uma cadeia de caracteres correspondente à versão do item que pode ser usado para controle de simultaneidade otimista ao executar operações que atualizam itens no catálogo. "*" pode ser usado para fazer correspondência com qualquer valor.

Propriedades comuns

Essas propriedades se aplicam a todos os tipos de ativos de raiz e todos os tipos de anotação.

Nome da propriedade Tipo de dados Comentários
fromSourceSystem Booliano Indica se os dados do item são derivados de um sistema de origem (como o Banco de Dados do SQL Server ou o Oracle Database) ou criados por um usuário.

Propriedades comuns de raiz

Essas propriedades se aplicam a todos os tipos de ativos de raiz.

Nome da propriedade Tipo de dados Comentários
name String Um nome derivado das informações de local da fonte de dados
dsl DataSourceLocation Descreve com exclusividade a fonte de dados e é um dos identificadores do ativo. (Consulte a seção de identidade dupla). A estrutura da dsl varia de acordo com o protocolo e o tipo de origem.
dataSource DataSourceInfo Mais detalhes sobre o tipo de ativo.
lastRegisteredBy SecurityPrincipal Descreve o usuário que registrou esse ativo por último. Contém a ID exclusiva do usuário (o UPN) e um nome de exibição (lastName e firstName).
containerID String ID do ativo de contêiner da fonte de dados. Não há suporte para essa propriedade no tipo Contêiner.

Propriedades comuns de anotação não singleton

Essas propriedades se aplicam a todos os tipos de anotação não singleton (anotações com permissão para existir em número superior a uma por ativo).

Nome da propriedade Tipo de dados Comentários
chave String Um usuário especificado chave que identifica exclusivamente a anotação na coleção atual. O comprimento da chave não pode exceder 256 caracteres.

Tipos de ativos de raiz

Tipos de ativos de raiz são os tipos que representam os vários tipos de ativos de dados que podem ser registrados no catálogo. Para cada tipo de raiz, há uma exibição que descreve o ativo e as anotações incluídas nela. O nome da exibição deve ser usado no segmento de URL correspondente {view_name} ao publicar um ativo usando a API REST.

Tipo de ativo (nome de exibição) Mais propriedades Tipo de dados Anotações permitidas Comentários
Tabela ("tabelas") Descrição Uma Tabela representa quaisquer dados tabulares. Por exemplo: Tabela SQL, Exibição SQL, Tabela Tabular do Analysis Services, dimensão do multidimensional do Analysis Services, Tabela do Oracle, etc.
FriendlyName
Marca
Esquema
ColumnDescription
ColumnTag
Especialista
Visualizar
AccessInstruction
TableDataProfile
ColumnDataProfile
ColumnDataClassification
Documentação
Medida ("medidas") Descrição Esse tipo representa uma medida do Analysis Services.
FriendlyName
Marca
Especialista
AccessInstruction
Documentação
medida Coluna Metadados que descrevem a medida.
isCalculated Booliano Especifica se a medida é calculada ou não.
measureGroup String Especifica se a medida é calculada ou não.
KPI ("kpis") Descrição
FriendlyName
Marca
Especialista
AccessInstruction
Documentação
measureGroup String Contêiner físico para a medida.
goalExpression String Uma expressão numérica MDX ou um cálculo que retorna o valor alvo do KPI.
valueExpression String Uma expressão numérica MDX que retorna o valor real do KPI.
statusExpression String Uma expressão MDX que representa o estado do KPI em um point-in-time.
trendExpression String Uma expressão MDX que avalia o valor do KPI ao longo do tempo. A tendência pode ser qualquer critério com base no tempo e que seja útil em um contexto empresarial específico.
Relatório ("relatórios") Descrição Esse tipo representa um relatório do SQL Server Reporting Services.
FriendlyName
Marca
Especialista
AccessInstruction
Documentação
assetCreatedDate String
assetCreatedDate String
assetModifiedDate String
assetModifiedBy String
Relatório ("relatórios") Descrição Esse tipo representa um contêiner de outros ativos, como um banco de dados SQL, um contêiner de Blobs do Azure ou um modelo do Analysis Services.
Marca
Especialista
AccessInstruction
Documentação

Tipos de anotação

Tipos de anotação representam tipos de metadados que podem ser atribuídos a outros tipos no catálogo.

Tipo de anotação (nome de exibição aninhado) Mais propriedades Tipo de dados Comentários
Descrição ("descrições") Esta propriedade contém uma descrição de um ativo. Cada usuário do sistema pode adicionar sua própria descrição. Somente o usuário pode editar o Objeto de descrição. (Os Administradores e Proprietários de ativos podem excluir o objeto Descrição, mas não editá-lo). O sistema mantém as descrições dos usuários separadamente. Desta maneira, há uma matriz de descrições de cada ativo (uma para cada usuário que contribuiu com conhecimento sobre o ativo, além de possivelmente uma contendo informações derivadas da fonte de dados).
descrição string Uma descrição curta (duas a três linhas) do ativo.
Marca ("marcas") Esta propriedade define uma marca de um ativo. Cada usuário do sistema pode adicionar várias marcas para um ativo. Somente o usuário que criou os objetos Marca pode editá-los. (Administradores e Proprietários de Ativos podem excluir o objeto Marca, mas não editá-lo). O sistema mantém as marcas dos usuários separadamente. Portanto, há uma matriz de objetos Tag em cada ativo.
marcação string Uma marca que descreve o ativo.
FriendlyName ("friendlyName") Esta propriedade contém um nome amigável de um ativo. FriendlyName é uma anotação singleton: apenas um FriendlyName pode ser adicionado a um ativo. Somente o usuário que criou o objeto FriendlyName pode editá-lo. (Proprietários de ativos e Administradores podem excluir o objeto FriendlyName, mas não editá-lo). O sistema mantém os nomes amigáveis dos usuários separadamente.
friendlyName string Um nome amigável do ativo.
FriendlyName ("friendlyName") Esta propriedade contém um nome amigável de um ativo. FriendlyName é uma anotação singleton: apenas um FriendlyName pode ser adicionado a um ativo. Somente o usuário que criou o objeto FriendlyName pode editá-lo. (Proprietários de ativos e Administradores podem excluir o objeto FriendlyName, mas não editá-lo). O sistema mantém os nomes amigáveis dos usuários separadamente.
friendlyName string Um nome amigável do ativo.
Esquema ("esquema") O Esquema descreve a estrutura dos dados. Ela lista os nomes de atributo (coluna, atributo, campo etc.), tipos e também outros metadados. Essa informação é derivada da fonte de dados. Esquema é uma anotação singleton: somente um esquema pode ser adicionado a um ativo.
colunas Column[] Uma matriz de objetos de coluna. Eles descrevem a coluna com informações derivadas da fonte de dados.
ColumnDescription ("columnDescriptions") Esta propriedade contém uma descrição de uma coluna. Cada usuário do sistema pode adicionar suas próprias descrições para várias colunas (no máximo uma por coluna). Somente o usuário que criou os objetos ColumnDescription pode editá-los. (Os Administradores e Proprietários de ativos podem excluir o objeto ColumnDescription, mas não editá-lo). O sistema mantém as descrições de coluna dos usuários separadamente. Desta maneira, há uma matriz de objetos ColumnDescription de cada ativo (uma por coluna para cada usuário que contribuiu com conhecimento sobre a coluna, além de possivelmente uma contendo informações derivadas da fonte de dados). A ColumnDescription é livremente vinculada ao Esquema, de modo que pode ficar fora de sincronia. ColumnDescription pode descrever uma coluna que não existe mais no esquema. Cabe ao gravador manter a descrição e o esquema em sincronia. A fonte de dados também pode ter informações de descrição de colunas e são outros objetos ColumnDescription que seriam criados ao executar a ferramenta.
columnName String O nome da coluna à qual essa descrição se refere.
descrição String Uma descrição curta (duas a três linhas) da coluna.
ColumnTag ("columnTags") Esta propriedade contém uma marca de uma coluna. Cada usuário do sistema pode adicionar várias marcas para uma determinada coluna e pode adicionar marcas a múltiplas colunas. Somente o usuário que criou os objetos ColumnTag pode editá-los. (Administradores e Proprietários de Ativos podem excluir o objeto ColumnTag, mas não editá-lo). O sistema mantém as marcas de coluna dos usuários separadamente. Portanto, há uma matriz de objetos ColumnTag em cada ativo. A ColumnTag é livremente vinculada ao esquema, de modo que pode ficar fora de sincronia. ColumnTag pode descrever uma coluna que não existe mais no esquema. Cabe ao escritor manter a marca de coluna e o esquema em sincronia.
columnName String O nome da coluna à qual essa marca se refere.
marcação String Uma marca que descreve a coluna.
Especialista ("especialistas") Essa propriedade contém um usuário que é considerado um especialista no conjunto de dados. As opiniões dos especialistas (descrições) borbulham até o topo da experiência do usuário ao listar descrições. Cada usuário pode especificar seus próprios especialistas. Somente esse usuário pode editar o objeto de especialistas. (Administradores e proprietários de Ativos podem excluir o objeto Especialista, mas não editá-lo.)
especialista SecurityPrincipal
Visualização ("visualizações") A visualização contém um instantâneo das primeiras 20 linhas de dados para o ativo. A Visualização só faz sentido para alguns tipos de ativos (faz sentido para Tabela, mas não para Medida).
versão prévia object[] A matriz de objetos que representa uma coluna. Cada objeto tem um mapeamento de propriedade para uma coluna com um valor para a linha da coluna.
AccessInstruction ("accessInstructions")
Tipo MIME string O tipo mime do conteúdo.
content string As instruções para obter acesso a esse ativo de dados. O conteúdo pode ser uma URL, um endereço de email ou um conjunto de instruções.
TableDataProfile ("tableDataProfiles")
numberOfRows int O número de linhas no conjunto de dados.
tamanho longo O tamanho em bytes do conjunto de dados.
schemaModifiedTime string A hora da última modificação do esquema.
dataModifiedTime string A hora da última modificação do conjunto de dados (os dados foram adicionados, modificados ou excluídos).
ColumnsDataProfile ("columnsDataProfiles")
colunas ColumnDataProfile[] Uma matriz de perfis de dados da coluna.
ColumnDataClassification ("columnDataClassifications")
columnName String O nome da coluna à qual essa classificação se refere.
classificação String A classificação dos dados nesta coluna.
Documentação ("documentação") Um determinado ativo pode ter apenas uma documentação associada a ele.
Tipo MIME string O tipo mime do conteúdo.
content string O conteúdo da documentação.

Tipos comuns

Tipos comuns podem ser usados como os tipos de propriedades, mas não são Itens.

Tipo comum Propriedades Tipo de dados Comentários
DataSourceInfo sourceType string Descreve o tipo de fonte de dados. Por exemplo: SQL Server, banco de dados Oracle etc.
objectType string Descreve o tipo de objeto na fonte de dados. Por exemplo: Tabela, Exibição do SQL Server.
DataSourceLocation protocolo string Obrigatória. Descreve um protocolo usado para se comunicar com a fonte de dados. Por exemplo: tds para o SQL Server, oracle para o Oracle etc. Confira Especificação de referência de fonte de dados – Estrutura DSL para obter a lista de protocolos com suporte no momento.
address Dicionário<cadeia de caracteres, objeto> Obrigatória. O endereço é um conjunto de dados específicos do protocolo que é usado para identificar a fonte de dados que está sendo referenciada. Os dados de endereço no escopo de determinado protocolo, o que significa que ele é inútil sem o conhecimento do protocolo.
autenticação string Opcional. O esquema de autenticação usado para se comunicar com a fonte de dados. Por exemplo: windows, oauth etc.
connectionProperties Dicionário<cadeia de caracteres, objeto> Opcional. Informações adicionais sobre como se conectar a uma fonte de dados.
DataSourceLocation O back-end não executa nenhuma validação das propriedades fornecidas no Microsoft Entra ID durante a publicação.
upn string Obrigatória. Endereço de email exclusivo do usuário. Precisa ser especificado se a objectId não foi fornecida ou no contexto da propriedade "lastRegisteredBy", caso contrário, é opcional.
objectId Guid Opcional. Identidade do usuário ou do grupo de segurança do Microsoft Entra. Opcional. Precisa ser especificado se o UPN não foi fornecido, caso contrário, é opcional.
firstName string Nome do usuário (para fins de exibição). Opcional. Válido somente no contexto da propriedade "lastRegisteredBy". Não pode ser especificado quando a entidade de segurança é fornecida para "funções", "permissões" e "especialistas".
lastName string Sobrenome do usuário (para fins de exibição). Opcional. Válido somente no contexto da propriedade "lastRegisteredBy". Não pode ser especificado quando a entidade de segurança é fornecida para "funções", "permissões" e "especialistas".
Coluna name string Nome da coluna ou do atributo.
tipo string Tipo de dados da coluna ou do atributo. Os tipos permitidos dependem sourceType de dados do ativo. Há suporte apenas para um subconjunto de tipos.
maxLength int O comprimento máximo permitido para a coluna ou atributo. Derivado da fonte de dados. Aplicável somente a alguns tipos de fontes.
precisão int A precisão para a coluna ou atributo. Derivado da fonte de dados. Aplicável somente a alguns tipos de fontes.
isNullable isNullable Se a coluna tem permissão para ter um valor nulo ou não. Derivado da fonte de dados. Aplicável somente a alguns tipos de fontes.
expressão string Se o valor for uma coluna calculada, esse campo contém a expressão que expresse este valor. Derivado da fonte de dados. Aplicável somente a alguns tipos de fontes.
ColumnDataProfile columnName string Nome da coluna.
tipo string O tipo da coluna.
min string O valor mínimo no conjunto de dados.
max string O valor máximo no conjunto de dados.
avg double O valor médio no conjunto de dados.
stdev double O desvio padrão para o conjunto de dados
nullCount int A contagem de valores nulos no conjunto de dados.
distinctCount int A contagem de valores distintos no conjunto de dados.

Identidade do ativo

O Catálogo de Dados do Azure usa as propriedades de identidade e “protocol” do recipiente de propriedades “address” da propriedade "dsl" do DataSourceLocation para gerar a identidade do ativo que é usado para abordar o ativo dentro do Catálogo. Por exemplo, o protocolo TDS tem as propriedades de identidade "server", "database", "schema" e "object". As combinações das propriedades de protocolo e identidade são usadas para gerar a identidade do Ativo de Tabela do SQL Server. O Catálogo de Dados do Azure fornece vários protocolos de fonte de dados internos que são listados em Especificação de referência da fonte de dados - Estrutura de DSL. O conjunto de protocolos com suporte pode ser estendido por meio de programação (confira a referência da API REST do Catálogo de Dados). Administradores do Catálogo podem registrar protocolos de fonte de dados personalizados. A tabela a seguir descreve as propriedades necessárias para registrar um protocolo personalizado.

Especificação de protocolo de fonte de dados personalizados

Há três tipos diferentes de especificações de protocolo de fonte de dados. Veja abaixo os tipos, seguidos por uma tabela das respectivas propriedades.

DataSourceProtocol

Propriedades Tipo de dados Comentários
namespace string O namespace do protocolo. O namespace deve ter de 1 a 255 caracteres, conter uma ou mais partes não vazias separadas por ponto (.). Cada parte deve ter de 1 a 255 caracteres, começar com uma letra e conter somente letras e números.
name string O nome do protocolo. O nome deve ter de 1 a 255 caracteres, começar com uma letra ou número e conter apenas letras, números e hífen (-).
identityProperties DataSourceProtocolIdentityProperty[] Lista de propriedades de identidade, deve conter pelo menos uma, mas no máximo 20 propriedades. Por exemplo: “server”, “database”, “schema” e “object” são propriedades de identidade do protocolo “tds”.
identitySets DataSourceProtocolIdentitySet[] Lista de conjuntos de identidade. Define conjuntos de propriedades de identidade que representam a identidade do ativo válido. Deve conter pelo menos um, mas no máximo 20 conjuntos. Por exemplo: {"server", "database", "schema" e "object"} é um conjunto de identidade para o protocolo TDS, que define a identidade do ativo de Tabela do SQL Server.

DataSourceProtocolIdentityProperty

Propriedades Tipo de dados Comentários
name string O nome da propriedade. Cada parte deve ter de 1 a 100 caracteres, começar com uma letra e conter somente letras e números.
tipo string O tipo da propriedade. Os valores com suporte são: “bool”, “boolean”, “byte”, “guid”, “int”, “integer”, “long”, “string” e “url”
ignoreCase bool Indica se o caso deve ser ignorado ao usar o valor da propriedade. Só pode ser especificado para propriedades com o tipo "string". O valor padrão é falso.
urlPathSegmentsIgnoreCase bool[] Indica se o caso deve ser ignorado para cada segmento do caminho da URL. Só pode ser especificado para propriedades com o tipo "url". O valor padrão é [falso].

DataSourceProtocolIdentitySet

Propriedades Tipo de dados Comentários
name string O nome do conjunto de identidade.
properties string[] A lista de propriedades de identidade incluída em um conjunto de identidades. Ela não pode conter duplicatas. Cada propriedade referenciada pelo conjunto de identidades deve ser definida na lista "identityProperties" do protocolo.

Funções e autorização

O Catálogo de Dados do Microsoft Azure fornece recursos de autorização para operações CRUD de ativos e anotações.

O Catálogo de Dados do Azure usa dois mecanismos de autorização:

  • Autorização baseada em função
  • Autorização baseada em permissão

Funções

Há três funções: Administrador, Proprietário e Colaborador. Cada função tem seu escopo e direitos que são resumidos na tabela a seguir.

Função Escopo Direitos
Administrador Catálogo (todos os ativos/anotações no catálogo) Read, Delete, ViewRoles, ChangeOwnership, ChangeVisibility, ViewPermissions
Proprietário Cada ativo (item raiz) Read, Delete, ViewRoles, ChangeOwnership, ChangeVisibility, ViewPermissions
Colaborador Cada ativo e anotação individuais Read*, Update, Delete, ViewRoles

Observação

*Todos os direitos são revogados se Read à direita do item é revogado do Colaborador

Observação

Os direitos Read, Update, Delete e ViewRoles são aplicáveis a qualquer item (ativo ou anotação) enquanto TakeOwnership, ChangeOwnership, ChangeVisibility e ViewPermissions só são aplicáveis ao ativo de raiz. Excluir aplica-se a um item e a subitens ou a um item único abaixo dele. Por exemplo, excluir um ativo também exclui todas as anotações desse ativo.

Permissões

A permissão funciona como uma lista de entradas de controle de acesso. Cada entrada de controle de acesso atribui o conjunto de direitos a uma entidade de segurança. Permissões só podem ser especificadas em um ativo (ou seja, item de raiz) e aplicam-se ao ativo e a todos os subelementos.

Durante a visualização do Catálogo de Dados do Azure, somente o direito Read tem suporte na lista de permissões para permitir que o cenário restrinja a visibilidade de um ativo.

Por padrão qualquer usuário autenticado tem o direito Read para qualquer item do catálogo, a menos que a visibilidade esteja restrita ao conjunto de entidades nas permissões.

API REST

As solicitações de exibição de item PUT e POST podem ser usadas para controlar funções e permissões. Além do conteúdo do item, é possível especificar duas propriedades do sistema, roles e permissions.

Observação

permissões aplica-se somente a um item raiz. Proprietário só é aplicável a um item raiz. Por padrão, quando um item é criado no catálogo, seu Colaborador é definido como o usuário autenticado no momento. Se o item deve ser atualizado por todos os usuários, o Colaborador deverá ser definido como a entidade de segurança especial <Everyone> na propriedade roles quando o item for publicado pela primeira vez (veja o exemplo a seguir). O Colaborador não pode ser alterado e permanece o mesmo durante o tempo de vida de um item (até mesmo o Administrador ou o Proprietário não têm o direito de alterar o Colaborador). O único valor permitido para a configuração explícita do Colaborador é <Everyone>: Colaborador só pode ser um usuário que criou um item ou <Everyone>.

Exemplos

Defina o Colaborador como <Everyone> ao publicar um item.

A entidade de segurança especial <Everyone> tem a objectId "00000000-0000-0000-0000-000000000201".

POSThttps://api.azuredatacatalog.com/catalogs/default/views/tables/?api-version=2016-03-30

Observação

Algumas implementações de cliente HTTP podem reemitir solicitações automaticamente em resposta a um 302 do servidor, mas normalmente removem cabeçalhos de autorização da solicitação. Como o cabeçalho de Autorização é necessário para fazer solicitações ao Catálogo de Dados do Azure, você deve garantir que o cabeçalho de Autorização ainda seja fornecido ao emitir novamente uma solicitação para um local de redirecionamento especificado pelo Catálogo de Dados do Azure. O código de exemplo a seguir demonstra isso usando o objeto HttpWebRequest .NET.

Corpo

    {
        "roles": [
            {
                "role": "Contributor",
                "members": [
                    {
                        "objectId": "00000000-0000-0000-0000-000000000201"
                    }
                ]
            }
        ]
    }

Atribua proprietários e restrinja a visibilidade de um item de raiz existente: 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"
                    }
                ]
            }
        ]
    }

Observação

Em PUT, não é obrigatório especificar uma carga de item no corpo. PUT pode ser usado para atualizar apenas funções e/ou permissões.

Próximas etapas

Referência da API REST do Catálogo de Dados do Azure