Espace de noms: microsoft.graph
Importante
Les API sous la version /beta
dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Créez un objet privilegedAccessGroupEligibilityScheduleRequest .
Cette API est disponible dans les déploiements de cloud national suivants.
Service global |
Gouvernement des États-Unis L4 |
Us Government L5 (DOD) |
Chine gérée par 21Vianet |
✅ |
✅ |
✅ |
✅ |
Autorisations
Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.
Type d’autorisation |
Autorisations avec privilèges minimum |
Autorisations privilégiées plus élevées |
Déléguée (compte professionnel ou scolaire) |
PrivilegedEligibilitySchedule.ReadWrite.AzureADGroup |
PrivilegedEligibilitySchedule.Remove.AzureADGroup |
Déléguée (compte Microsoft personnel) |
Non prise en charge. |
Non prise en charge. |
Application |
PrivilegedEligibilitySchedule.ReadWrite.AzureADGroup |
PrivilegedEligibilitySchedule.Remove.AzureADGroup |
Importante
Dans les scénarios délégués avec des comptes professionnels ou scolaires, l’utilisateur connecté doit être propriétaire ou membre du groupe ou se voir attribuer un rôle Microsoft Entra pris en charge ou un rôle personnalisé avec une autorisation de rôle prise en charge. Les rôles les moins privilégiés suivants sont pris en charge pour cette opération.
- Pour les groupes pouvant être attribués à un rôle : Administrateur de rôle privilégié
- Pour les groupes non assignables à un rôle : Enregistreur d’annuaire, Administrateur de groupes, Administrateur de gouvernance des identités ou Administrateur d’utilisateurs
Les attributions de rôles pour l’utilisateur appelant doivent être étendues au niveau de l’annuaire.
D’autres rôles disposant d’autorisations pour gérer des groupes (tels que les administrateurs Exchange pour les groupes Microsoft 365 non assignables à un rôle) et les administrateurs avec des affectations étendues au niveau de l’unité administrative peuvent gérer les groupes via l’API de groupes et remplacer les modifications apportées dans Microsoft Entra PIM via PIM pour les API de groupes.
Requête HTTP
POST /identityGovernance/privilegedAccess/group/eligibilityScheduleRequests
Corps de la demande
Dans le corps de la demande, fournissez une représentation JSON de l’objet privilegedAccessGroupEligibilityScheduleRequest .
Vous pouvez spécifier les propriétés suivantes lors de la création d’un privilegedAccessGroupEligibilityScheduleRequest.
Propriété |
Type |
Description |
accessId |
privilegedAccessGroupRelationships |
Identificateur de la relation d’éligibilité d’appartenance ou de propriété au groupe. Les valeurs possibles sont : owner , member . Obligatoire. |
action |
String |
Représente le type d’opération sur la demande d’attribution d’appartenance au groupe ou d’éligibilité de propriété. Les valeurs possibles sont adminAssign , adminUpdate , adminRemove , selfActivate , selfDeactivate , adminExtend , adminRenew .
-
adminAssign : pour que les administrateurs attribuent l’appartenance au groupe ou l’éligibilité à la propriété aux principaux. -
adminRemove : pour que les administrateurs suppriment les principaux de l’appartenance au groupe ou des éligibilités de propriété. -
adminUpdate : pour que les administrateurs modifient les affectations éligibles existantes. -
adminExtend : pour que les administrateurs étendent les affectations éligibles arrivant à expiration. -
adminRenew : pour que les administrateurs renouvellent les affectations éligibles expirées. -
selfActivate : pour que les principaux activent leurs affectations éligibles. -
selfDeactivate : pour que les principaux désactivent leurs affectations éligibles.
|
groupId |
String |
Identificateur du groupe représentant l’étendue de l’éligibilité à l’appartenance ou à la propriété via PIM pour les groupes. Obligatoire. |
justification |
String |
Message fourni par les utilisateurs et les administrateurs lorsqu’ils créent l’objet privilegedAccessGroupAssignmentScheduleRequest . |
principalId |
String |
Identificateur du principal dont l’appartenance ou la propriété au groupe est gérée via PIM pour les groupes. Obligatoire. |
scheduleInfo |
requestSchedule |
Période de l’appartenance au groupe ou de l’attribution de propriété pour PIM pour les groupes. Les planifications périodiques ne sont actuellement pas prises en charge. Obligatoire. |
ticketInfo |
ticketInfo |
Détails du ticket lié à la demande d’appartenance au groupe ou d’attribution de propriété, y compris les détails du numéro de ticket et du système de ticket. Facultatif. |
Réponse
Si elle réussit, cette méthode renvoie un 201 Created
code de réponse et un objet privilegedAccessGroupEligibilityScheduleRequest dans le corps de la réponse.
Exemples
Exemple 1 : un administrateur crée une demande de propriété de groupe éligible pour un principal
La demande suivante crée une demande de planification d’éligibilité pour rendre un principal éligible pour être propriétaire du groupe. La propriété éligible expire au bout de deux heures.
Demande
POST https://graph.microsoft.com/beta/identityGovernance/privilegedAccess/group/eligibilityScheduleRequests
Content-Type: application/json
{
"accessId": "member",
"principalId": "3cce9d87-3986-4f19-8335-7ed075408ca2",
"groupId": "2b5ed229-4072-478d-9504-a047ebd4b07d",
"action": "AdminAssign",
"scheduleInfo": {
"startDateTime": "2023-02-06T19:25:00.000Z",
"expiration": {
"type": "AfterDateTime",
"endDateTime": "2023-02-07T19:56:00.000Z"
}
},
"justification": "Assign eligible request."
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new PrivilegedAccessGroupEligibilityScheduleRequest
{
AccessId = PrivilegedAccessGroupRelationships.Member,
PrincipalId = "3cce9d87-3986-4f19-8335-7ed075408ca2",
GroupId = "2b5ed229-4072-478d-9504-a047ebd4b07d",
Action = ScheduleRequestActions.AdminAssign,
ScheduleInfo = new RequestSchedule
{
StartDateTime = DateTimeOffset.Parse("2023-02-06T19:25:00.000Z"),
Expiration = new ExpirationPattern
{
Type = ExpirationPatternType.AfterDateTime,
EndDateTime = DateTimeOffset.Parse("2023-02-07T19:56:00.000Z"),
},
},
Justification = "Assign eligible request.",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.IdentityGovernance.PrivilegedAccess.Group.EligibilityScheduleRequests.PostAsync(requestBody);
mgc-beta identity-governance privileged-access group eligibility-schedule-requests create --body '{\
"accessId": "member",\
"principalId": "3cce9d87-3986-4f19-8335-7ed075408ca2",\
"groupId": "2b5ed229-4072-478d-9504-a047ebd4b07d",\
"action": "AdminAssign",\
"scheduleInfo": {\
"startDateTime": "2023-02-06T19:25:00.000Z",\
"expiration": {\
"type": "AfterDateTime",\
"endDateTime": "2023-02-07T19:56:00.000Z"\
}\
},\
"justification": "Assign eligible request."\
}\
'
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewPrivilegedAccessGroupEligibilityScheduleRequest()
accessId := graphmodels.MEMBER_PRIVILEGEDACCESSGROUPRELATIONSHIPS
requestBody.SetAccessId(&accessId)
principalId := "3cce9d87-3986-4f19-8335-7ed075408ca2"
requestBody.SetPrincipalId(&principalId)
groupId := "2b5ed229-4072-478d-9504-a047ebd4b07d"
requestBody.SetGroupId(&groupId)
action := graphmodels.ADMINASSIGN_SCHEDULEREQUESTACTIONS
requestBody.SetAction(&action)
scheduleInfo := graphmodels.NewRequestSchedule()
startDateTime , err := time.Parse(time.RFC3339, "2023-02-06T19:25:00.000Z")
scheduleInfo.SetStartDateTime(&startDateTime)
expiration := graphmodels.NewExpirationPattern()
type := graphmodels.AFTERDATETIME_EXPIRATIONPATTERNTYPE
expiration.SetType(&type)
endDateTime , err := time.Parse(time.RFC3339, "2023-02-07T19:56:00.000Z")
expiration.SetEndDateTime(&endDateTime)
scheduleInfo.SetExpiration(expiration)
requestBody.SetScheduleInfo(scheduleInfo)
justification := "Assign eligible request."
requestBody.SetJustification(&justification)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
eligibilityScheduleRequests, err := graphClient.IdentityGovernance().PrivilegedAccess().Group().EligibilityScheduleRequests().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
PrivilegedAccessGroupEligibilityScheduleRequest privilegedAccessGroupEligibilityScheduleRequest = new PrivilegedAccessGroupEligibilityScheduleRequest();
privilegedAccessGroupEligibilityScheduleRequest.setAccessId(PrivilegedAccessGroupRelationships.Member);
privilegedAccessGroupEligibilityScheduleRequest.setPrincipalId("3cce9d87-3986-4f19-8335-7ed075408ca2");
privilegedAccessGroupEligibilityScheduleRequest.setGroupId("2b5ed229-4072-478d-9504-a047ebd4b07d");
privilegedAccessGroupEligibilityScheduleRequest.setAction(ScheduleRequestActions.AdminAssign);
RequestSchedule scheduleInfo = new RequestSchedule();
OffsetDateTime startDateTime = OffsetDateTime.parse("2023-02-06T19:25:00.000Z");
scheduleInfo.setStartDateTime(startDateTime);
ExpirationPattern expiration = new ExpirationPattern();
expiration.setType(ExpirationPatternType.AfterDateTime);
OffsetDateTime endDateTime = OffsetDateTime.parse("2023-02-07T19:56:00.000Z");
expiration.setEndDateTime(endDateTime);
scheduleInfo.setExpiration(expiration);
privilegedAccessGroupEligibilityScheduleRequest.setScheduleInfo(scheduleInfo);
privilegedAccessGroupEligibilityScheduleRequest.setJustification("Assign eligible request.");
PrivilegedAccessGroupEligibilityScheduleRequest result = graphClient.identityGovernance().privilegedAccess().group().eligibilityScheduleRequests().post(privilegedAccessGroupEligibilityScheduleRequest);
const options = {
authProvider,
};
const client = Client.init(options);
const privilegedAccessGroupEligibilityScheduleRequest = {
accessId: 'member',
principalId: '3cce9d87-3986-4f19-8335-7ed075408ca2',
groupId: '2b5ed229-4072-478d-9504-a047ebd4b07d',
action: 'AdminAssign',
scheduleInfo: {
startDateTime: '2023-02-06T19:25:00.000Z',
expiration: {
type: 'AfterDateTime',
endDateTime: '2023-02-07T19:56:00.000Z'
}
},
justification: 'Assign eligible request.'
};
await client.api('/identityGovernance/privilegedAccess/group/eligibilityScheduleRequests')
.version('beta')
.post(privilegedAccessGroupEligibilityScheduleRequest);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\PrivilegedAccessGroupEligibilityScheduleRequest;
use Microsoft\Graph\Beta\Generated\Models\PrivilegedAccessGroupRelationships;
use Microsoft\Graph\Beta\Generated\Models\ScheduleRequestActions;
use Microsoft\Graph\Beta\Generated\Models\RequestSchedule;
use Microsoft\Graph\Beta\Generated\Models\ExpirationPattern;
use Microsoft\Graph\Beta\Generated\Models\ExpirationPatternType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new PrivilegedAccessGroupEligibilityScheduleRequest();
$requestBody->setAccessId(new PrivilegedAccessGroupRelationships('member'));
$requestBody->setPrincipalId('3cce9d87-3986-4f19-8335-7ed075408ca2');
$requestBody->setGroupId('2b5ed229-4072-478d-9504-a047ebd4b07d');
$requestBody->setAction(new ScheduleRequestActions('adminAssign'));
$scheduleInfo = new RequestSchedule();
$scheduleInfo->setStartDateTime(new \DateTime('2023-02-06T19:25:00.000Z'));
$scheduleInfoExpiration = new ExpirationPattern();
$scheduleInfoExpiration->setType(new ExpirationPatternType('afterDateTime'));
$scheduleInfoExpiration->setEndDateTime(new \DateTime('2023-02-07T19:56:00.000Z'));
$scheduleInfo->setExpiration($scheduleInfoExpiration);
$requestBody->setScheduleInfo($scheduleInfo);
$requestBody->setJustification('Assign eligible request.');
$result = $graphServiceClient->identityGovernance()->privilegedAccess()->group()->eligibilityScheduleRequests()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.Governance
$params = @{
accessId = "member"
principalId = "3cce9d87-3986-4f19-8335-7ed075408ca2"
groupId = "2b5ed229-4072-478d-9504-a047ebd4b07d"
action = "AdminAssign"
scheduleInfo = @{
startDateTime = [System.DateTime]::Parse("2023-02-06T19:25:00.000Z")
expiration = @{
type = "AfterDateTime"
endDateTime = [System.DateTime]::Parse("2023-02-07T19:56:00.000Z")
}
}
justification = "Assign eligible request."
}
New-MgBetaIdentityGovernancePrivilegedAccessGroupEligibilityScheduleRequest -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.privileged_access_group_eligibility_schedule_request import PrivilegedAccessGroupEligibilityScheduleRequest
from msgraph_beta.generated.models.privileged_access_group_relationships import PrivilegedAccessGroupRelationships
from msgraph_beta.generated.models.schedule_request_actions import ScheduleRequestActions
from msgraph_beta.generated.models.request_schedule import RequestSchedule
from msgraph_beta.generated.models.expiration_pattern import ExpirationPattern
from msgraph_beta.generated.models.expiration_pattern_type import ExpirationPatternType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = PrivilegedAccessGroupEligibilityScheduleRequest(
access_id = PrivilegedAccessGroupRelationships.Member,
principal_id = "3cce9d87-3986-4f19-8335-7ed075408ca2",
group_id = "2b5ed229-4072-478d-9504-a047ebd4b07d",
action = ScheduleRequestActions.AdminAssign,
schedule_info = RequestSchedule(
start_date_time = "2023-02-06T19:25:00.000Z",
expiration = ExpirationPattern(
type = ExpirationPatternType.AfterDateTime,
end_date_time = "2023-02-07T19:56:00.000Z",
),
),
justification = "Assign eligible request.",
)
result = await graph_client.identity_governance.privileged_access.group.eligibility_schedule_requests.post(request_body)
Réponse
L’exemple suivant illustre la réponse.
Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/privilegedAccess/group/eligibilityScheduleRequests/$entity",
"id": "f8bd9e2d-bc15-49b1-8a9b-c571b3cf9555",
"status": "Provisioned",
"createdDateTime": "2023-02-07T06:57:54.1633903Z",
"completedDateTime": "2023-02-07T06:57:55.6183972Z",
"action": "adminAssign",
"isValidationOnly": false,
"justification": "Assign eligible request.",
"principalId": "3cce9d87-3986-4f19-8335-7ed075408ca2",
"accessId": "member",
"groupId": "2b5ed229-4072-478d-9504-a047ebd4b07d",
"targetScheduleId": "2b5ed229-4072-478d-9504-a047ebd4b07d_member_f8bd9e2d-bc15-49b1-8a9b-c571b3cf9555",
"createdBy": {
"user": {
"id": "3cce9d87-3986-4f19-8335-7ed075408ca2"
}
},
"scheduleInfo": {
"startDateTime": "2023-02-07T06:57:55.6183972Z",
"recurrence": null,
"expiration": {
"type": "afterDateTime",
"endDateTime": "2023-02-07T19:56:00Z",
"duration": null
}
}
}
Exemple 2 : Un administrateur étend une appartenance de groupe éligible pour un principal
La demande suivante étend une demande de planification d’éligibilité existante avant son expiration.
Demande
POST https://graph.microsoft.com/beta/identityGovernance/privilegedAccess/group/eligibilityScheduleRequests
Content-Type: application/json
{
"accessId": "member",
"principalId": "3cce9d87-3986-4f19-8335-7ed075408ca2",
"groupId": "2b5ed229-4072-478d-9504-a047ebd4b07d",
"action": "AdminExtend",
"scheduleInfo": {
"startDateTime": "2023-02-06T19:25:00.000Z",
"expiration": {
"type": "AfterDateTime",
"endDateTime": "2023-02-07T20:56:00.000Z"
}
},
"justification": "Extend eligible request."
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new PrivilegedAccessGroupEligibilityScheduleRequest
{
AccessId = PrivilegedAccessGroupRelationships.Member,
PrincipalId = "3cce9d87-3986-4f19-8335-7ed075408ca2",
GroupId = "2b5ed229-4072-478d-9504-a047ebd4b07d",
Action = ScheduleRequestActions.AdminExtend,
ScheduleInfo = new RequestSchedule
{
StartDateTime = DateTimeOffset.Parse("2023-02-06T19:25:00.000Z"),
Expiration = new ExpirationPattern
{
Type = ExpirationPatternType.AfterDateTime,
EndDateTime = DateTimeOffset.Parse("2023-02-07T20:56:00.000Z"),
},
},
Justification = "Extend eligible request.",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.IdentityGovernance.PrivilegedAccess.Group.EligibilityScheduleRequests.PostAsync(requestBody);
mgc-beta identity-governance privileged-access group eligibility-schedule-requests create --body '{\
"accessId": "member",\
"principalId": "3cce9d87-3986-4f19-8335-7ed075408ca2",\
"groupId": "2b5ed229-4072-478d-9504-a047ebd4b07d",\
"action": "AdminExtend",\
"scheduleInfo": {\
"startDateTime": "2023-02-06T19:25:00.000Z",\
"expiration": {\
"type": "AfterDateTime",\
"endDateTime": "2023-02-07T20:56:00.000Z"\
}\
},\
"justification": "Extend eligible request."\
}\
'
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewPrivilegedAccessGroupEligibilityScheduleRequest()
accessId := graphmodels.MEMBER_PRIVILEGEDACCESSGROUPRELATIONSHIPS
requestBody.SetAccessId(&accessId)
principalId := "3cce9d87-3986-4f19-8335-7ed075408ca2"
requestBody.SetPrincipalId(&principalId)
groupId := "2b5ed229-4072-478d-9504-a047ebd4b07d"
requestBody.SetGroupId(&groupId)
action := graphmodels.ADMINEXTEND_SCHEDULEREQUESTACTIONS
requestBody.SetAction(&action)
scheduleInfo := graphmodels.NewRequestSchedule()
startDateTime , err := time.Parse(time.RFC3339, "2023-02-06T19:25:00.000Z")
scheduleInfo.SetStartDateTime(&startDateTime)
expiration := graphmodels.NewExpirationPattern()
type := graphmodels.AFTERDATETIME_EXPIRATIONPATTERNTYPE
expiration.SetType(&type)
endDateTime , err := time.Parse(time.RFC3339, "2023-02-07T20:56:00.000Z")
expiration.SetEndDateTime(&endDateTime)
scheduleInfo.SetExpiration(expiration)
requestBody.SetScheduleInfo(scheduleInfo)
justification := "Extend eligible request."
requestBody.SetJustification(&justification)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
eligibilityScheduleRequests, err := graphClient.IdentityGovernance().PrivilegedAccess().Group().EligibilityScheduleRequests().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
PrivilegedAccessGroupEligibilityScheduleRequest privilegedAccessGroupEligibilityScheduleRequest = new PrivilegedAccessGroupEligibilityScheduleRequest();
privilegedAccessGroupEligibilityScheduleRequest.setAccessId(PrivilegedAccessGroupRelationships.Member);
privilegedAccessGroupEligibilityScheduleRequest.setPrincipalId("3cce9d87-3986-4f19-8335-7ed075408ca2");
privilegedAccessGroupEligibilityScheduleRequest.setGroupId("2b5ed229-4072-478d-9504-a047ebd4b07d");
privilegedAccessGroupEligibilityScheduleRequest.setAction(ScheduleRequestActions.AdminExtend);
RequestSchedule scheduleInfo = new RequestSchedule();
OffsetDateTime startDateTime = OffsetDateTime.parse("2023-02-06T19:25:00.000Z");
scheduleInfo.setStartDateTime(startDateTime);
ExpirationPattern expiration = new ExpirationPattern();
expiration.setType(ExpirationPatternType.AfterDateTime);
OffsetDateTime endDateTime = OffsetDateTime.parse("2023-02-07T20:56:00.000Z");
expiration.setEndDateTime(endDateTime);
scheduleInfo.setExpiration(expiration);
privilegedAccessGroupEligibilityScheduleRequest.setScheduleInfo(scheduleInfo);
privilegedAccessGroupEligibilityScheduleRequest.setJustification("Extend eligible request.");
PrivilegedAccessGroupEligibilityScheduleRequest result = graphClient.identityGovernance().privilegedAccess().group().eligibilityScheduleRequests().post(privilegedAccessGroupEligibilityScheduleRequest);
const options = {
authProvider,
};
const client = Client.init(options);
const privilegedAccessGroupEligibilityScheduleRequest = {
accessId: 'member',
principalId: '3cce9d87-3986-4f19-8335-7ed075408ca2',
groupId: '2b5ed229-4072-478d-9504-a047ebd4b07d',
action: 'AdminExtend',
scheduleInfo: {
startDateTime: '2023-02-06T19:25:00.000Z',
expiration: {
type: 'AfterDateTime',
endDateTime: '2023-02-07T20:56:00.000Z'
}
},
justification: 'Extend eligible request.'
};
await client.api('/identityGovernance/privilegedAccess/group/eligibilityScheduleRequests')
.version('beta')
.post(privilegedAccessGroupEligibilityScheduleRequest);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\PrivilegedAccessGroupEligibilityScheduleRequest;
use Microsoft\Graph\Beta\Generated\Models\PrivilegedAccessGroupRelationships;
use Microsoft\Graph\Beta\Generated\Models\ScheduleRequestActions;
use Microsoft\Graph\Beta\Generated\Models\RequestSchedule;
use Microsoft\Graph\Beta\Generated\Models\ExpirationPattern;
use Microsoft\Graph\Beta\Generated\Models\ExpirationPatternType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new PrivilegedAccessGroupEligibilityScheduleRequest();
$requestBody->setAccessId(new PrivilegedAccessGroupRelationships('member'));
$requestBody->setPrincipalId('3cce9d87-3986-4f19-8335-7ed075408ca2');
$requestBody->setGroupId('2b5ed229-4072-478d-9504-a047ebd4b07d');
$requestBody->setAction(new ScheduleRequestActions('adminExtend'));
$scheduleInfo = new RequestSchedule();
$scheduleInfo->setStartDateTime(new \DateTime('2023-02-06T19:25:00.000Z'));
$scheduleInfoExpiration = new ExpirationPattern();
$scheduleInfoExpiration->setType(new ExpirationPatternType('afterDateTime'));
$scheduleInfoExpiration->setEndDateTime(new \DateTime('2023-02-07T20:56:00.000Z'));
$scheduleInfo->setExpiration($scheduleInfoExpiration);
$requestBody->setScheduleInfo($scheduleInfo);
$requestBody->setJustification('Extend eligible request.');
$result = $graphServiceClient->identityGovernance()->privilegedAccess()->group()->eligibilityScheduleRequests()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.Governance
$params = @{
accessId = "member"
principalId = "3cce9d87-3986-4f19-8335-7ed075408ca2"
groupId = "2b5ed229-4072-478d-9504-a047ebd4b07d"
action = "AdminExtend"
scheduleInfo = @{
startDateTime = [System.DateTime]::Parse("2023-02-06T19:25:00.000Z")
expiration = @{
type = "AfterDateTime"
endDateTime = [System.DateTime]::Parse("2023-02-07T20:56:00.000Z")
}
}
justification = "Extend eligible request."
}
New-MgBetaIdentityGovernancePrivilegedAccessGroupEligibilityScheduleRequest -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.privileged_access_group_eligibility_schedule_request import PrivilegedAccessGroupEligibilityScheduleRequest
from msgraph_beta.generated.models.privileged_access_group_relationships import PrivilegedAccessGroupRelationships
from msgraph_beta.generated.models.schedule_request_actions import ScheduleRequestActions
from msgraph_beta.generated.models.request_schedule import RequestSchedule
from msgraph_beta.generated.models.expiration_pattern import ExpirationPattern
from msgraph_beta.generated.models.expiration_pattern_type import ExpirationPatternType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = PrivilegedAccessGroupEligibilityScheduleRequest(
access_id = PrivilegedAccessGroupRelationships.Member,
principal_id = "3cce9d87-3986-4f19-8335-7ed075408ca2",
group_id = "2b5ed229-4072-478d-9504-a047ebd4b07d",
action = ScheduleRequestActions.AdminExtend,
schedule_info = RequestSchedule(
start_date_time = "2023-02-06T19:25:00.000Z",
expiration = ExpirationPattern(
type = ExpirationPatternType.AfterDateTime,
end_date_time = "2023-02-07T20:56:00.000Z",
),
),
justification = "Extend eligible request.",
)
result = await graph_client.identity_governance.privileged_access.group.eligibility_schedule_requests.post(request_body)
Réponse
L’exemple suivant illustre la réponse.
Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/privilegedAccess/group/eligibilityScheduleRequests/$entity",
"id": "e3405b79-c0d8-4597-87b5-a84451e29224",
"status": "Provisioned",
"createdDateTime": "2023-02-07T07:01:25.9239454Z",
"completedDateTime": "2023-02-07T07:01:27.3379548Z",
"action": "adminExtend",
"isValidationOnly": false,
"justification": "Extend eligible request.",
"principalId": "3cce9d87-3986-4f19-8335-7ed075408ca2",
"accessId": "member",
"groupId": "2b5ed229-4072-478d-9504-a047ebd4b07d",
"targetScheduleId": "2b5ed229-4072-478d-9504-a047ebd4b07d_member_e3405b79-c0d8-4597-87b5-a84451e29224",
"createdBy": {
"user": {
"id": "3cce9d87-3986-4f19-8335-7ed075408ca2"
}
},
"scheduleInfo": {
"startDateTime": "2023-02-07T07:01:27.3379548Z",
"expiration": {
"type": "afterDateTime",
"endDateTime": "2023-02-07T20:56:00Z",
"duration": null
}
}
}