Share via


Create customSecurityAttributeDefinition

Namespace: microsoft.graph

Create ein neues customSecurityAttributeDefinition-Objekt.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) CustomSecAttributeDefinition.ReadWrite.All Nicht verfügbar.
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung CustomSecAttributeDefinition.ReadWrite.All Nicht verfügbar.

Dem angemeldeten Benutzer muss außerdem mindestens die VerzeichnisrolleAttributdefinitionsadministrator zugewiesen sein. Standardmäßig verfügen der globale Administrator und andere Administratorrollen nicht über Berechtigungen zum Lesen, Definieren oder Zuweisen benutzerdefinierter Sicherheitsattribute.

HTTP-Anforderung

POST /directory/customSecurityAttributeDefinitions

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung des customSecurityAttributeDefinition-Objekts an.

Die folgende Tabelle zeigt die Eigenschaften, die Sie konfigurieren können, wenn Sie eine customSecurityAttributeDefinition erstellen.

Eigenschaft Typ Beschreibung
attributeSet String Name des Attributsatzes. Groß-/Kleinschreibung beachten. Erforderlich.
description String Beschreibung des benutzerdefinierten Sicherheitsattributes. Kann bis zu 128 Zeichen lang sein und Unicode-Zeichen enthalten. Darf keine Leerzeichen oder Sonderzeichen enthalten. Kann später geändert werden. Optional.
isCollection Boolesch Gibt an, ob dem benutzerdefinierten Sicherheitsattribute mehrere Werte zugewiesen werden können. Kann später nicht mehr geändert werden. Wenn type auf Booleanfestgelegt ist, kann isCollection nicht auf truefestgelegt werden. Erforderlich.
isSearchable Boolesch Gibt an, ob benutzerdefinierte Sicherheitsattributewerte für die Suche nach Objekten indiziert werden, denen Attributwerte zugewiesen sind. Kann später nicht mehr geändert werden. Erforderlich.
name String Name des benutzerdefinierten Sicherheitsattributes. Muss innerhalb eines Attributsatzes eindeutig sein. Kann bis zu 32 Zeichen lang sein und Unicode-Zeichen enthalten. Darf keine Leerzeichen oder Sonderzeichen enthalten. Kann später nicht mehr geändert werden. Groß-/Kleinschreibung beachten. Erforderlich.
status String Gibt an, ob das benutzerdefinierte Sicherheitsattribute aktiv oder deaktiviert ist. Zulässige Werte sind Available und Deprecated. Kann später geändert werden. Erforderlich.
type String Datentyp für die werte des benutzerdefinierten Sicherheitsattributes. Unterstützte Typen sind: Boolean, Integerund String. Kann später nicht mehr geändert werden. Erforderlich.
usePreDefinedValuesOnly Boolesch Gibt an, ob dem benutzerdefinierten Sicherheitsattribute nur vordefinierte Werte zugewiesen werden können. Wenn auf falsefestgelegt ist, sind Freiformwerte zulässig. Kann später von true in falsegeändert werden, aber nicht von false in truegeändert werden. Wenn type auf Booleanfestgelegt ist, kann usePreDefinedValuesOnly nicht auf truefestgelegt werden. Erforderlich.

Die Id-Eigenschaft wird automatisch generiert und kann nicht festgelegt werden.

Antwort

Bei erfolgreicher Ausführung gibt die Methode den 201 Created Antwortcode und ein customSecurityAttributeDefinition-Objekt im Antworttext zurück.

Beispiele

Beispiel 1: Hinzufügen eines benutzerdefinierten Sicherheitsattributes

Im folgenden Beispiel wird eine neue benutzerdefinierte Sicherheitsattributedefinition hinzugefügt, bei der es sich um einen einzelnen Freiformwert vom Typ String handelt.

  • Attributsatz: Engineering
  • Attribut: ProjectDate

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

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
}

Antwort

Das folgende Beispiel zeigt die Antwort.

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
}

Beispiel 2: Hinzufügen eines benutzerdefinierten Sicherheitsattributes, das mehrere vordefinierte Werte unterstützt

Im folgenden Beispiel wird eine neue benutzerdefinierte Sicherheitsattributedefinition hinzugefügt, die mehrere vordefinierte Werte vom Typ String unterstützt.

  • Attributsatz: Engineering
  • Attribut: Project

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

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
}

Antwort

Das folgende Beispiel zeigt die Antwort.

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
}

Beispiel 3: Hinzufügen eines benutzerdefinierten Sicherheitsattributes mit einer Liste vordefinierter Werte

Im folgenden Beispiel wird eine neue benutzerdefinierte Sicherheitsattributedefinition mit einer Liste vordefinierter Werte als Sammlung von Zeichenfolgen hinzugefügt.

  • Attributsatz: Engineering
  • Attribut: Project
  • Attributdatentyp: Auflistung von Zeichenfolgen
  • Vordefinierte Werte: Alpine, Baker, Cascade

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

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
        }
    ]
}

Antwort

Das folgende Beispiel zeigt die Antwort.

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
}