Criar permissionGrantConditionSet em inclui coleção de permissionGrantPolicy
Artigo
07/18/2022
2 minutos para o fim da leitura
3 colaboradores
Neste artigo
Namespace: microsoft.graph
Adicione condições em que um evento de concessão de permissão está incluído em uma política de concessão de permissão. Você faz isso adicionando uma permissionGrantConditionSet à coleção includes de uma permissionGrantPolicy .
Permissões
Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões .
Tipo de permissão
Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante)
Policy.ReadWrite.PermissionGrant
Delegado (conta pessoal da Microsoft)
Sem suporte.
Aplicativo
Policy.ReadWrite.PermissionGrant
Solicitação HTTP
POST /policies/permissionGrantPolicies/{id}/includes
Nome
Descrição
Autorização
{token} de portador. Obrigatório.
Content-type
application/json. Obrigatório.
Corpo da solicitação
No corpo da solicitação, fornece uma representação JSON de um objeto permissionGrantConditionSet.
Resposta
Se tiver êxito, este método retornará um código de 201 Created resposta e um objeto permissionGrantConditionSet no corpo da resposta.
Exemplos
Solicitação
Neste exemplo, todas as permissões delegadas para aplicativos cliente de editores verificados são incluídas na política de concessão de permissão. Como todas as outras condições do permissionGrantConditionSet foram omitidas, elas aceitarão seus valores padrão, que, em cada caso, são os mais inclusivos.
POST https://graph.microsoft.com/v1.0/policies/permissionGrantPolicies/{id}/includes
Content-Type: application/json
{
"permissionType": "delegated",
"clientApplicationsFromVerifiedPublisherOnly": true
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var permissionGrantConditionSet = new PermissionGrantConditionSet
{
PermissionType = PermissionType.Delegated,
ClientApplicationsFromVerifiedPublisherOnly = true
};
await graphClient.Policies.PermissionGrantPolicies["{permissionGrantPolicy-id}"].Includes
.Request()
.AddAsync(permissionGrantConditionSet);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
const options = {
authProvider,
};
const client = Client.init(options);
const permissionGrantConditionSet = {
permissionType: 'delegated',
clientApplicationsFromVerifiedPublisherOnly: true
};
await client.api('/policies/permissionGrantPolicies/{id}/includes')
.post(permissionGrantConditionSet);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/policies/permissionGrantPolicies/{id}/includes"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphPermissionGrantConditionSet *permissionGrantConditionSet = [[MSGraphPermissionGrantConditionSet alloc] init];
[permissionGrantConditionSet setPermissionType: [MSGraphPermissionType delegated]];
[permissionGrantConditionSet setClientApplicationsFromVerifiedPublisherOnly: true];
NSError *error;
NSData *permissionGrantConditionSetData = [permissionGrantConditionSet getSerializedDataWithError:&error];
[urlRequest setHTTPBody:permissionGrantConditionSetData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
PermissionGrantConditionSet permissionGrantConditionSet = new PermissionGrantConditionSet();
permissionGrantConditionSet.permissionType = PermissionType.DELEGATED;
permissionGrantConditionSet.clientApplicationsFromVerifiedPublisherOnly = true;
graphClient.policies().permissionGrantPolicies("{id}").includes()
.buildRequest()
.post(permissionGrantConditionSet);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewPermissionGrantConditionSet()
permissionType := "delegated"
requestBody.SetPermissionType(&permissionType)
clientApplicationsFromVerifiedPublisherOnly := true
requestBody.SetClientApplicationsFromVerifiedPublisherOnly(&clientApplicationsFromVerifiedPublisherOnly)
permissionGrantPolicyId := "permissionGrantPolicy-id"
result, err := graphClient.Policies().PermissionGrantPoliciesById(&permissionGrantPolicyId).Includes().Post(requestBody)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
Import-Module Microsoft.Graph.Identity.SignIns
$params = @{
PermissionType = "delegated"
ClientApplicationsFromVerifiedPublisherOnly = $true
}
New-MgPolicyPermissionGrantPolicyInclude -PermissionGrantPolicyId $permissionGrantPolicyId -BodyParameter $params
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider , consulte a documentação do SDK .
Resposta
Este é um exemplo de resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 200 OK
Content-type: application/json
{
"id": "75ffda85-9314-43bc-bf19-554a7d079e96",
"permissionClassification": "all",
"permissionType": "delegated",
"resourceApplication": "any",
"permissions": ["all"],
"clientApplicationIds": ["all"],
"clientApplicationTenantIds": ["all"],
"clientApplicationPublisherIds": ["all"],
"clientApplicationsFromVerifiedPublisherOnly": true
}