roleAssignmentScheduleRequests erstellen

Namespace: microsoft.graph

Wichtig

APIs unter der /beta Version in Microsoft Graph können geändert werden. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in Version 1.0 verfügbar ist, verwenden Sie die Versionsauswahl .

Erstellen Sie ein neues unifiedRoleAssignmentScheduleRequest-Objekt . Mit diesem Vorgang können Administratoren und Benutzer Aufgaben hinzufügen, entfernen, erweitern oder verlängern. Zum Ausführen dieser Anforderung muss der aufrufende Benutzer die mehrstufige Authentifizierung (Multi-Factor Authentication, MFA) erzwungen haben und die Abfrage in einer Sitzung ausführen, in der sie für MFA abgefragt wurden. Siehe Aktivieren der mehrstufigen Azure AD-Authentifizierung pro Benutzer zum Sichern von Anmeldeereignissen.

Berechtigungen

Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie im Artikel zum Thema Berechtigungen.

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Delegiert (Geschäfts-, Schul- oder Unikonto) RoleAssignmentSchedule.ReadWrite.Directory
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt
Anwendung Nicht unterstützt

HTTP-Anforderung

POST /roleManagement/directory/roleAssignmentScheduleRequests

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich.
Content-Type application/json. Erforderlich.

Anforderungstext

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

In der folgenden Tabelle sind die Eigenschaften aufgeführt, die angegeben werden müssen, wenn Sie unifiedRoleAssignmentScheduleRequest erstellen.

Eigenschaft Typ Beschreibung
id Zeichenfolge Der eindeutige Bezeichner für unifiedRoleAssignmentScheduleRequest. Schlüssel, nicht nullfähig, schreibgeschützt.
Aktion Zeichenfolge Stellt den Typ des Vorgangs für die Rollenzuweisung dar. Die folgenden Werte sind möglich:
  • AdminAssign: Administratoren können Benutzern oder Gruppen Rollen zuweisen.
  • AdminRemove: Administratoren können Benutzer oder Gruppen aus Rollen entfernen.
  • AdminUpdate: Administratoren können vorhandene Rollenzuweisungen ändern.
  • AdminExtend: Administratoren können ablaufende Aufgaben erweitern.
  • AdminRenew: Administratoren können abgelaufene Aufgaben verlängern.
  • SelfActivate: Benutzer können ihre Aufgaben aktivieren.
  • SelfDeactivate: Benutzer können ihre aktiven Aufgaben deaktivieren.
  • SelfExtend: Benutzer können anfordern, ihre ablaufenden Aufgaben zu verlängern.
  • SelfRenew: Benutzer können anfordern, ihre abgelaufenen Aufgaben zu verlängern.
principalId Zeichenfolge Bezeichner des Prinzipals, dem die Zuordnung gewährt wird.
roleDefinitionId Zeichenfolge Der Bezeichner des unifiedRoleDefinition-Objekts, für das die Zuordnung vorgesehen ist. Schreibgeschützt.
directoryScopeId Zeichenfolge Bezeichner des Verzeichnisobjekts, das den Bereich der Zuordnung darstellt. Der Bereich einer Zuordnung bestimmt den Satz von Ressourcen, für die dem Prinzipal Zugriff gewährt wurde. Verzeichnisbereiche sind freigegebene Bereiche, die im Verzeichnis gespeichert sind und von mehreren Anwendungen verstanden werden. Wird / für mandantenweiten Bereich verwendet. Verwenden Sie appScopeId , um den Bereich nur auf eine Anwendung zu beschränken.
appScopeId Zeichenfolge Bezeichner des app-spezifischen Bereichs, wenn der Zuweisungsbereich app-spezifisch ist. Der Bereich einer Zuordnung bestimmt den Satz von Ressourcen, für die dem Prinzipal Zugriff gewährt wurde. App-Bereiche sind Bereiche, die nur von dieser Anwendung definiert und verstanden werden. Wird / für mandantenweite App-Bereiche verwendet. Verwenden Sie directoryScopeId , um den Bereich auf bestimmte Verzeichnisobjekte zu beschränken, z. B. administrative Einheiten.
isValidationOnly Boolescher Wert Gibt an, ob der Aufruf eine Überprüfung oder ein tatsächlicher Aufruf ist. Legen Sie diese Eigenschaft nur fest, wenn Sie überprüfen möchten, ob eine Aktivierung zusätzlichen Regeln wie MFA unterliegt, bevor Sie die Anforderung tatsächlich übermitteln.
targetScheduleId Zeichenfolge ID des der Zuordnung zugeordneten Zeitplanobjekts.
Rechtfertigung Zeichenfolge Eine Nachricht, die von Benutzern und Administratoren beim Erstellen der Anforderung zur Verfügung gestellt wird, warum sie benötigt wird.
scheduleInfo requestSchedule Das Zeitplanobjekt der Rollenzuweisungsanforderung.
ticketInfo ticketInfo Das ticketInfo-Objekt, das der Rollenzuweisungsanforderung zugeordnet ist und Details zur Ticketnummer und zum Ticketsystem enthält.

Antwort

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

Wenn der aufrufende Benutzer während seiner Anmeldesitzung nicht zur mehrstufigen Authentifizierung aufgefordert wurde, schlägt eine Anforderung mit der SelfActivate-Aktion fehl und gibt einen 400 Bad request Antwortcode zurück.

Beispiele

Beispiel 1: Administrator, der einem Prinzipal eine Verzeichnisrolle zuweist

Anforderung

In der folgenden Anforderung erstellt der Administrator eine Anforderung zum Zuweisen einer Rolle, die durch einen Prinzipal identifiziert wird fdd7a751-b60b-444a-984c-02652fe8fa1c , der durch die ID 07706ff1-46c7-4847-ae33-3003830675a1identifiziert wird. Der Umfang ihrer Rolle ist alle Verzeichnisobjekte im Mandanten, und die Zuweisung ist dauerhaft, d. h., sie läuft nicht ab.

POST https://graph.microsoft.com/beta/roleManagement/directory/roleAssignmentScheduleRequests/
Content-Type: application/json

{
  "action": "AdminAssign",
  "justification": "Assign User Admin to IT Helpdesk (User) group",
  "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
  "directoryScopeId": "/",
  "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
  "scheduleInfo": {
    "startDateTime": "2021-07-01T00:00:00Z",
    "expiration": {
      "type": "NoExpiration"
    }
  }
}

Antwort

Nachfolgend sehen Sie ein Beispiel der Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

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

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleAssignmentScheduleRequests/$entity",
  "id": "b5a22921-656a-4429-9c4e-59a5f576614d",
  "status": "Provisioned",
  "createdDateTime": "2021-07-27T09:18:40.2029365Z",
  "completedDateTime": "2021-07-27T09:18:42.7811184Z",
  "approvalId": null,
  "customData": null,
  "action": "AdminAssign",
  "principalId": "07706ff1-46c7-4847-ae33-3003830675a1",
  "roleDefinitionId": "fdd7a751-b60b-444a-984c-02652fe8fa1c",
  "directoryScopeId": "/",
  "appScopeId": null,
  "isValidationOnly": false,
  "targetScheduleId": "b5a22921-656a-4429-9c4e-59a5f576614d",
  "justification": "Assign User Admin to IT Helpdesk (User) group",
  "createdBy": {
    "application": null,
    "device": null,
    "user": {
      "displayName": null,
      "id": "fc9a2c2b-1ddc-486d-a211-5fe8ca77fa1f"
    }
  },
  "scheduleInfo": {
    "startDateTime": "2021-07-27T09:18:42.7811184Z",
    "recurrence": null,
    "expiration": {
      "type": "noExpiration",
      "endDateTime": null,
      "duration": null
    }
  },
  "ticketInfo": {
    "ticketNumber": null,
    "ticketSystem": null
  }
}

Beispiel 2: Benutzer, der seine berechtigte Rolle aktiviert

Anforderung

In der folgenden Anforderung aktiviert ein durch principalId c6ad1942-4afa-47f8-8d48-afb5d8d69d2f identifizierter Benutzer seine eigene berechtigte Rolle, die durch identifiziert wird 9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3. Der Umfang ihrer Rolle ist für alle Verzeichnisobjekte im Mandanten und die Zuordnung fünf Stunden lang. Zum Ausführen dieser Anforderung muss der aufrufende Benutzer die mehrstufige Authentifizierung (Multi-Factor Authentication, MFA) erzwungen haben und die Abfrage in einer Sitzung ausführen, in der sie für MFA abgefragt wurden.

POST https://graph.microsoft.com/beta/roleManagement/directory/roleAssignmentScheduleRequests/
Content-Type: application/json

{
    "action": "SelfActivate",
    "principalId": "c6ad1942-4afa-47f8-8d48-afb5d8d69d2f",
    "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3",
    "directoryScopeId": "/",
    "justification": "Need to update app roles for selected apps.",
    "scheduleInfo": {
        "startDateTime": "2021-08-17T17:40:00.000Z",
        "expiration": {
            "type": "AfterDuration",
            "duration": "PT5H"
        }
    },
    "ticketInfo": {
        "ticketNumber": "CONTOSO:Normal-67890",
        "ticketSystem": "MS Project"
    }
}

Antwort

Nachfolgend sehen Sie ein Beispiel der Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleAssignmentScheduleRequests/$entity",
    "id": "163daf73-8746-4996-87de-ab71dc624bf9",
    "status": "Granted",
    "createdDateTime": "2021-08-17T17:39:36.7040696Z",
    "completedDateTime": "2021-08-17T17:40:00Z",
    "approvalId": null,
    "customData": null,
    "action": "SelfActivate",
    "principalId": "c6ad1942-4afa-47f8-8d48-afb5d8d69d2f",
    "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3",
    "directoryScopeId": "/",
    "appScopeId": null,
    "isValidationOnly": false,
    "targetScheduleId": "163daf73-8746-4996-87de-ab71dc624bf9",
    "justification": "Need to update app roles for selected apps.",
    "createdBy": {
        "application": null,
        "device": null,
        "user": {
            "displayName": null,
            "id": "c6ad1942-4afa-47f8-8d48-afb5d8d69d2f"
        }
    },
    "scheduleInfo": {
        "startDateTime": "2021-08-17T17:40:00Z",
        "recurrence": null,
        "expiration": {
            "type": "afterDuration",
            "endDateTime": null,
            "duration": "PT5H"
        }
    },
    "ticketInfo": {
        "ticketNumber": "CONTOSO:Normal-67890",
        "ticketSystem": "MS Project"
    }
}