Partilhar via


Criar customSecurityAttributeDefinition

Namespace: microsoft.graph

Crie um novo objeto customSecurityAttributeDefinition .

Esta API está disponível nas seguintes implementações de cloud nacionais.

Serviço global US Government L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.

Tipo de permissão Permissões com menos privilégios Permissões com privilégios superiores
Delegado (conta corporativa ou de estudante) CustomSecAttributeDefinition.ReadWrite.All Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application CustomSecAttributeDefinition.ReadWrite.All Indisponível.

Em cenários delegados com contas escolares ou profissionais, o utilizador com sessão iniciada tem de ter uma função suportada do Microsoft Entra ou uma função personalizada com uma permissão de função suportada. O Administrador de Definição de Atributos é a única função com privilégios suportada para esta operação.

Por predefinição, o Administrador Global e outras funções de administrador não têm permissões para ler, definir ou atribuir atributos de segurança personalizados.

Solicitação HTTP

POST /directory/customSecurityAttributeDefinitions

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo do pedido, forneça uma representação JSON do objeto customSecurityAttributeDefinition .

A tabela seguinte mostra as propriedades que pode configurar quando cria uma customSecurityAttributeDefinition.

Propriedade Tipo Descrição
attributeSet Cadeia de caracteres Nome do conjunto de atributos. Sensível às maiúsculas e minúsculas. Obrigatório.
description Cadeia de caracteres Descrição do atributo de segurança personalizado. Pode ter até 128 carateres e incluir carateres Unicode. Não é possível conter espaços ou carateres especiais. Pode ser alterado mais tarde. Opcional.
isCollection Booliano Indica se vários valores podem ser atribuídos ao atributo de segurança personalizado. Não pode ser alterado mais tarde. Se o tipo estiver definido como Boolean, isCollection não pode ser definido como true. Obrigatório.
isSearchable Booliano Indica se os valores de atributos de segurança personalizados estão indexados para pesquisa em objetos que são valores de atributo atribuídos. Não pode ser alterado mais tarde. Obrigatório.
nome Cadeia de caracteres Nome do atributo de segurança personalizado. Tem de ser exclusivo dentro de um conjunto de atributos. Pode ter até 32 carateres de comprimento e incluir carateres Unicode. Não é possível conter espaços ou carateres especiais. Não pode ser alterado mais tarde. Sensível às maiúsculas e minúsculas. Obrigatório.
status Cadeia de caracteres Especifica se o atributo de segurança personalizado está ativo ou desativado. Os valores aceitáveis são Available e Deprecated. Pode ser alterado mais tarde. Obrigatório.
type Cadeia de caracteres Tipo de dados para os valores de atributos de segurança personalizados. Os tipos suportados são: Boolean, Integere String. Não pode ser alterado mais tarde. Obrigatório.
usePreDefinedValuesOnly Booliano Indica se apenas os valores predefinidos podem ser atribuídos ao atributo de segurança personalizado. Se definido como false, os valores de forma livre são permitidos. Mais tarde, pode ser alterado de true para false, mas não pode ser alterado de false para true. Se o tipo estiver definido como Boolean, usePreDefinedValuesOnly não pode ser definido como true. Obrigatório.

A propriedade ID é gerada automaticamente e não pode ser definida.

Resposta

Se for bem-sucedido, este método devolve um 201 Created código de resposta e um objeto customSecurityAttributeDefinition no corpo da resposta.

Exemplos

Exemplo 1: adicionar um atributo de segurança personalizado

O exemplo seguinte adiciona uma nova definição de atributo de segurança personalizada que é um valor de forma livre único do tipo Cadeia.

  • Conjunto de atributos: Engineering
  • Atributo: ProjectDate

Solicitação

O exemplo a seguir mostra uma solicitação.

POST https://graph.microsoft.com/v1.0/directory/customSecurityAttributeDefinitions
Content-Type: application/json

{
    "attributeSet":"Engineering",
    "description":"Target completion date",
    "isCollection":false,
    "isSearchable":true,
    "name":"ProjectDate",
    "status":"Available",
    "type":"String",
    "usePreDefinedValuesOnly": false
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#directory/customSecurityAttributeDefinitions/$entity",
    "attributeSet": "Engineering",
    "description": "Target completion date",
    "id": "Engineering_ProjectDate",
    "isCollection": false,
    "isSearchable": true,
    "name": "ProjectDate",
    "status": "Available",
    "type": "String",
    "usePreDefinedValuesOnly": false
}

Exemplo 2: adicionar um atributo de segurança personalizado que suporte vários valores predefinidos

O exemplo seguinte adiciona uma nova definição de atributo de segurança personalizada que suporta vários valores do tipo Cadeia predefinidos.

  • Conjunto de atributos: Engineering
  • Atributo: Project

Solicitação

O exemplo a seguir mostra uma solicitação.

POST https://graph.microsoft.com/v1.0/directory/customSecurityAttributeDefinitions
Content-Type: application/json
Content-length: 310

{
    "attributeSet":"Engineering",
    "description":"Active projects for user",
    "isCollection":true,
    "isSearchable":true,
    "name":"Project",
    "status":"Available",
    "type":"String",
    "usePreDefinedValuesOnly": true
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#directory/customSecurityAttributeDefinitions/$entity",
    "attributeSet": "Engineering",
    "description": "Active projects for user",
    "id": "Engineering_Project",
    "isCollection": true,
    "isSearchable": true,
    "name": "Project",
    "status": "Available",
    "type": "String",
    "usePreDefinedValuesOnly": true
}

Exemplo 3: adicionar um atributo de segurança personalizado com uma lista de valores predefinidos

O exemplo seguinte adiciona uma nova definição de atributo de segurança personalizada com uma lista de valores predefinidos como uma coleção de Cadeias.

  • Conjunto de atributos: Engineering
  • Atributo: Project
  • Tipo de dados de atributo: Coleção de cadeias de caracteres
  • Valores predefinidos: Alpine, , BakerCascade

Solicitação

O exemplo a seguir mostra uma solicitação.

POST https://graph.microsoft.com/v1.0/directory/customSecurityAttributeDefinitions
Content-Type: application/json

{
    "attributeSet": "Engineering",
    "description": "Active projects for user",
    "isCollection": true,
    "isSearchable": true,
    "name": "Project",
    "status": "Available",
    "type": "String",
    "usePreDefinedValuesOnly": true,
    "allowedValues": [
        {
            "id": "Alpine",
            "isActive": true
        },
        {
            "id": "Baker",
            "isActive": true
        },
        {
            "id": "Cascade",
            "isActive": true
        }
    ]
}

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#directory/customSecurityAttributeDefinitions/$entity",
    "attributeSet": "Engineering",
    "description": "Active projects for user",
    "id": "Engineering_Project",
    "isCollection": true,
    "isSearchable": true,
    "name": "Project",
    "status": "Available",
    "type": "String",
    "usePreDefinedValuesOnly": true
}