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)
AccessReview.ReadWrite.All
Indisponível.
Delegado (conta pessoal da Microsoft)
Sem suporte.
Sem suporte.
Application
AccessReview.ReadWrite.All
Indisponível.
Importante
Em cenários delegados com contas escolares ou profissionais, o utilizador com sessão iniciada tem de ter uma função de Microsoft Entra suportada ou uma função personalizada com uma permissão de função suportada. As seguintes funções com menos privilégios são suportadas para esta operação.
Para escrever revisões de acesso de um grupo ou aplicação: Administrador de Utilizadores, Administrador de Governação de Identidades
Para escrever revisões de acesso de uma função de Microsoft Entra: Administrador de Governação de Identidades, Administrador de Funções Com Privilégios
Solicitação HTTP
POST /identityGovernance/accessReviews/historyDefinitions
Nome para a recolha de dados do histórico de revisão de acesso. Obrigatório.
reviewHistoryPeriodStartDateTime
DateTimeOffset
Um carimbo de data/hora. As revisões a partir de ou depois desta data serão incluídas nos dados do histórico obtido. Só é necessário se scheduleSettings não estiver definido.
reviewHistoryPeriodEndDateTime
DateTimeOffset
Um carimbo de data/hora. As revisões a partir de ou antes desta data serão incluídas nos dados do histórico obtidos. Só é necessário se scheduleSettings não estiver definido.
Ainda não é suportado. As definições de uma série de definições do histórico de revisão de acesso periódico. Só é necessário se reviewHistoryPeriodStartDateTime ou reviewHistoryPeriodEndDateTime não estiverem definidos.
Consultas de âmbito suportadas para accessReviewHistoryDefinition
A propriedade scopes do accessReviewHistoryDefinition baseia-se no accessReviewQueryScope, um recurso que lhe permite configurar diferentes recursos na propriedade de consulta . Em seguida, estes recursos representam o âmbito da definição do histórico e ditam o tipo de dados do histórico de revisões incluídos no ficheiro CSV transferível que é gerado quando as accessReviewHistoryInstances da definição do histórico são criadas.
O $filter parâmetro de consulta com o contains operador é suportado na propriedade de âmbito de accessReviewScheduleDefinition. Utilize o seguinte formato para o pedido:
Liste todos os accessReviewScheduleDefinition em grupos individuais (exclui definições no âmbito de todos os grupos do Microsoft 365 com convidados).
/groups/{group id}
Liste todos os accessReviewScheduleDefinition num grupo específico (exclui definições no âmbito de todos os grupos do Microsoft 365 com convidados).
./members
Liste todos os accessReviewScheduleDefinition no âmbito de todos os grupos do Microsoft 365 com convidados.
accessPackageAssignments
Liste todos os accessReviewScheduleDefinition num pacote de acesso.
roleAssignmentScheduleInstances
Liste todos os accessReviewScheduleDefinition para principais atribuídos a uma função com privilégios.
O $filter parâmetro de consulta não é suportado no accessReviewInactiveUserQueryScope ou principalResourceMembershipScope.
Resposta
Se for bem-sucedido, este método devolve um 201 Created código de resposta e um objeto accessReviewHistoryDefinition no corpo da resposta.
Exemplos
O exemplo seguinte mostra como criar uma definição do histórico de revisão de acesso no âmbito de revisões de acesso em pacotes e grupos de acesso, em execução entre a data de início de 01/01/2021 e a data de fim de 05/04/2021.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new AccessReviewHistoryDefinition
{
DisplayName = "Last quarter's group reviews April 2021",
Decisions = new List<AccessReviewHistoryDecisionFilter?>
{
AccessReviewHistoryDecisionFilter.Approve,
AccessReviewHistoryDecisionFilter.Deny,
AccessReviewHistoryDecisionFilter.DontKnow,
AccessReviewHistoryDecisionFilter.NotReviewed,
AccessReviewHistoryDecisionFilter.NotNotified,
},
ReviewHistoryPeriodStartDateTime = DateTimeOffset.Parse("2021-01-01T00:00:00Z"),
ReviewHistoryPeriodEndDateTime = DateTimeOffset.Parse("2021-04-30T23:59:59Z"),
Scopes = new List<AccessReviewScope>
{
new AccessReviewQueryScope
{
OdataType = "#microsoft.graph.accessReviewQueryScope",
QueryType = "MicrosoftGraph",
Query = "/identityGovernance/accessReviews/definitions?$filter=contains(scope/query, 'accessPackageAssignments')",
QueryRoot = null,
},
new AccessReviewQueryScope
{
OdataType = "#microsoft.graph.accessReviewQueryScope",
QueryType = "MicrosoftGraph",
Query = "/identityGovernance/accessReviews/definitions?$filter=contains(scope/query, '/groups')",
QueryRoot = null,
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.IdentityGovernance.AccessReviews.HistoryDefinitions.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
AccessReviewHistoryDefinition accessReviewHistoryDefinition = new AccessReviewHistoryDefinition();
accessReviewHistoryDefinition.setDisplayName("Last quarter's group reviews April 2021");
LinkedList<AccessReviewHistoryDecisionFilter> decisions = new LinkedList<AccessReviewHistoryDecisionFilter>();
decisions.add(AccessReviewHistoryDecisionFilter.Approve);
decisions.add(AccessReviewHistoryDecisionFilter.Deny);
decisions.add(AccessReviewHistoryDecisionFilter.DontKnow);
decisions.add(AccessReviewHistoryDecisionFilter.NotReviewed);
decisions.add(AccessReviewHistoryDecisionFilter.NotNotified);
accessReviewHistoryDefinition.setDecisions(decisions);
OffsetDateTime reviewHistoryPeriodStartDateTime = OffsetDateTime.parse("2021-01-01T00:00:00Z");
accessReviewHistoryDefinition.setReviewHistoryPeriodStartDateTime(reviewHistoryPeriodStartDateTime);
OffsetDateTime reviewHistoryPeriodEndDateTime = OffsetDateTime.parse("2021-04-30T23:59:59Z");
accessReviewHistoryDefinition.setReviewHistoryPeriodEndDateTime(reviewHistoryPeriodEndDateTime);
LinkedList<AccessReviewScope> scopes = new LinkedList<AccessReviewScope>();
AccessReviewQueryScope accessReviewScope = new AccessReviewQueryScope();
accessReviewScope.setOdataType("#microsoft.graph.accessReviewQueryScope");
accessReviewScope.setQueryType("MicrosoftGraph");
accessReviewScope.setQuery("/identityGovernance/accessReviews/definitions?$filter=contains(scope/query, 'accessPackageAssignments')");
accessReviewScope.setQueryRoot(null);
scopes.add(accessReviewScope);
AccessReviewQueryScope accessReviewScope1 = new AccessReviewQueryScope();
accessReviewScope1.setOdataType("#microsoft.graph.accessReviewQueryScope");
accessReviewScope1.setQueryType("MicrosoftGraph");
accessReviewScope1.setQuery("/identityGovernance/accessReviews/definitions?$filter=contains(scope/query, '/groups')");
accessReviewScope1.setQueryRoot(null);
scopes.add(accessReviewScope1);
accessReviewHistoryDefinition.setScopes(scopes);
AccessReviewHistoryDefinition result = graphClient.identityGovernance().accessReviews().historyDefinitions().post(accessReviewHistoryDefinition);