Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.
Tipo de permissão
Permissões menos privilegiadas
Permissões privilegiadas mais altas
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.
Para cenários delegados, o usuário conectado deve ter pelo menos uma das seguintes funções de Microsoft Entra.
Gravar revisões de acesso de um grupo ou aplicativo
Escrever revisões de acesso de uma função de Microsoft Entra
Administrador do usuário Administrador de Governança de Identidade
Administrador de funções privilegiadas do administrador de governança de identidade
Solicitação HTTP
POST /identityGovernance/accessReviews/historyDefinitions
Nome da coleção de dados de histórico de revisão de acesso. Obrigatório.
reviewHistoryPeriodStartDateTime
DateTimeOffset
Um carimbo de data/hora. As revisões que começam em ou após essa data serão incluídas nos dados de histórico buscados. Necessário apenas se agendaSettings não estiverem definidos.
reviewHistoryPeriodEndDateTime
DateTimeOffset
Um carimbo de data/hora. As revisões que começam antes ou antes dessa data serão incluídas nos dados de histórico buscados. Necessário apenas se agendaSettings não estiverem definidos.
Ainda não há suporte. As configurações de uma série de definição de histórico de revisão de acesso recorrente. Necessário apenas se reviewHistoryPeriodStartDateTime ou reviewHistoryPeriodEndDateTime não estiver definido.
Consultas de escopo com suporte para accessReviewHistoryDefinition
A propriedade scopes do accessReviewHistoryDefinition baseia-se no accessReviewQueryScope, um recurso que permite configurar diferentes recursos em sua propriedade de consulta . Esses recursos representam então o escopo da definição de histórico e ditam o tipo de dados de histórico de revisão incluídos no arquivo CSV para download gerado quando o accessReviewHistoryInstances da definição de histórico é criado.
O $filter parâmetro de consulta com o contains operador tem suporte na propriedade de escopo do accessReviewScheduleDefinition. Use o seguinte formato para a solicitação:
Liste cada accessReviewScheduleDefinition em grupos individuais (exclui definições em escopo para todos os grupos do Microsoft 365 com convidados).
/groups/{group id}
Liste cada accessReviewScheduleDefinition em um grupo específico (exclui definições com escopo para todos os grupos do Microsoft 365 com convidados).
./members
Liste cada accessReviewScheduleDefinition com escopo para todos os grupos do Microsoft 365 com convidados.
accessPackageAssignments
Liste cada accessReviewScheduleDefinition em um pacote de acesso.
roleAssignmentScheduleInstances
Liste cada accessReviewScheduleDefinition para entidades atribuídas a uma função privilegiada.
O $filter parâmetro de consulta não tem suporte no accessReviewInactiveUserQueryScope ou principalResourceMembershipScope.
Resposta
Se for bem-sucedido, esse método retornará um 201 Created código de resposta e um objeto accessReviewHistoryDefinition no corpo da resposta.
Exemplos
O exemplo a seguir mostra como criar uma definição de histórico de revisão de acesso com escopo para acessar revisões em pacotes e grupos de acesso, em execução entre a data de início de 01/01/2021 e a data de término de 04/05/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);
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulte https://aka.ms/ContentUserFeedback.