Espaço de nomes: microsoft.graph.security
Importante
As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.
Crie um novo objeto userSource .
Esta API está disponível nas seguintes implementações de cloud nacionais.
| Serviço global |
US Government L4 |
US Government L5 (DOD) |
China operada pela 21Vianet |
| ✅ |
✅ |
✅ |
❌ |
Permissões
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) |
eDiscovery.Read.All |
eDiscovery.ReadWrite.All |
| Delegado (conta pessoal da Microsoft) |
Sem suporte. |
Sem suporte. |
| Application |
eDiscovery.Read.All |
eDiscovery.ReadWrite.All |
Solicitação HTTP
POST /security/cases/ediscoveryCases/{ediscoveryCaseId}/legalHolds/{ediscoveryHoldPolicyId}/userSources
| Nome |
Descrição |
| Autorização |
{token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-Type |
application/json. Obrigatório. |
Corpo da solicitação
No corpo do pedido, forneça uma representação JSON do objeto userSource .
Pode especificar as seguintes propriedades ao criar um userSource.
| Propriedade |
Tipo |
Descrição |
| email |
Cadeia de caracteres |
Endereço SMTP do utilizador. |
| includedSources |
microsoft.graph.security.sourceType |
Especifica as origens incluídas neste grupo. Os valores possíveis são: mailbox, site. Só mailbox é aplicável a origens de utilizador. |
Resposta
Se for bem-sucedido, este método devolve um 201 Created código de resposta e um objeto microsoft.graph.security.userSource no corpo da resposta.
Exemplos
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/security/cases/ediscoveryCases/{ediscoveryCaseId}/legalHolds/{ediscoveryHoldPolicyId}/userSources
Content-Type: application/json
{
"email": "admin@contoso.com",
"includedSources": "mailbox"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models.Security;
var requestBody = new UserSource
{
Email = "admin@contoso.com",
IncludedSources = SourceType.Mailbox | SourceType.Site,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Security.Cases.EdiscoveryCases["{ediscoveryCase-id}"].LegalHolds["{ediscoveryHoldPolicy-id}"].UserSources.PostAsync(requestBody);
// 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"
graphmodelssecurity "github.com/microsoftgraph/msgraph-beta-sdk-go/models/security"
//other-imports
)
requestBody := graphmodelssecurity.NewUserSource()
email := "admin@contoso.com"
requestBody.SetEmail(&email)
includedSources := graphmodels.MAILBOX, SITE_SOURCETYPE
requestBody.SetIncludedSources(&includedSources)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
userSources, err := graphClient.Security().Cases().EdiscoveryCases().ByEdiscoveryCaseId("ediscoveryCase-id").LegalHolds().ByEdiscoveryHoldPolicyId("ediscoveryHoldPolicy-id").UserSources().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.models.security.UserSource userSource = new com.microsoft.graph.beta.models.security.UserSource();
userSource.setEmail("admin@contoso.com");
userSource.setIncludedSources(EnumSet.of(com.microsoft.graph.beta.models.security.SourceType.Mailbox, com.microsoft.graph.beta.models.security.SourceType.Site));
com.microsoft.graph.models.security.UserSource result = graphClient.security().cases().ediscoveryCases().byEdiscoveryCaseId("{ediscoveryCase-id}").legalHolds().byEdiscoveryHoldPolicyId("{ediscoveryHoldPolicy-id}").userSources().post(userSource);
const options = {
authProvider,
};
const client = Client.init(options);
const userSource = {
email: 'admin@contoso.com',
includedSources: 'mailbox, site'
};
await client.api('/security/cases/ediscoveryCases/{ediscoveryCaseId}/legalHolds/{ediscoveryHoldPolicyId}/userSources')
.version('beta')
.post(userSource);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\Security\UserSource;
use Microsoft\Graph\Beta\Generated\Models\Security\SourceType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new UserSource();
$requestBody->setEmail('admin@contoso.com');
$requestBody->setIncludedSources(new SourceType('mailbox, site'));
$result = $graphServiceClient->security()->cases()->ediscoveryCases()->byEdiscoveryCaseId('ediscoveryCase-id')->legalHolds()->byEdiscoveryHoldPolicyId('ediscoveryHoldPolicy-id')->userSources()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Security
$params = @{
email = "admin@contoso.com"
includedSources = "mailbox, site"
}
New-MgBetaSecurityCaseEdiscoveryCaseLegalHoldUserSource -EdiscoveryCaseId $ediscoveryCaseId -EdiscoveryHoldPolicyId $ediscoveryHoldPolicyId -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.security.user_source import UserSource
from msgraph_beta.generated.models.source_type import SourceType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = UserSource(
email = "admin@contoso.com",
included_sources = SourceType.Mailbox | SourceType.Site,
)
result = await graph_client.security.cases.ediscovery_cases.by_ediscovery_case_id('ediscoveryCase-id').legal_holds.by_ediscovery_hold_policy_id('ediscoveryHoldPolicy-id').user_sources.post(request_body)
Resposta
O exemplo a seguir mostra a resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#security/cases/ediscoveryCases('b0073e4e-4184-41c6-9eb7-8c8cc3e2288b')/legalHolds('0053a61a3b6c42738f7606791716a22a')/userSources/$entity",
"displayName": "MOD Administrator",
"createdDateTime": "0001-01-01T00:00:00Z",
"holdStatus": "applied",
"id": "c25c3914-f9f7-43ee-9cba-a25377e0cec6",
"email": "admin@contoso.com",
"includedSources": "mailbox,site",
"siteWebUrl": "",
"createdBy": {
"user": {
"id": "c25c3914-f9f7-43ee-9cba-a25377e0cec6",
"displayName": "MOD Administrator",
"userPrincipalName": "admin@contoso.com"
},
"application": {
"id": "de8bc8b5-d9f9-48b1-a8ad-b748da725064",
"displayName": "Graph Explorer"
}
}
}