Namespace: microsoft.graph
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 recurso mutualTlsOauthConfiguration que contenha um objeto de autoridade de certificação especificado.
Essa API está disponível nas seguintes implantações de nuvem nacional.
| Serviço global |
Governo dos EUA L4 |
US Government L5 (DOD) |
China operada pela 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Permissões
Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos 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 com privilégios mais elevados |
| Delegado (conta corporativa ou de estudante) |
MutualTlsOauthConfiguration.ReadWrite.All |
Indisponível. |
| Delegado (conta pessoal da Microsoft) |
Sem suporte. |
Sem suporte. |
| Application |
MutualTlsOauthConfiguration.ReadWrite.All |
Indisponível. |
Importante
Para acesso delegado usando contas corporativas ou de estudante, o usuário conectado deve receber uma função do Microsoft Entra com suporte ou uma função personalizada que conceda as permissões necessárias para esta operação. Esta operação dá suporte às seguintes funções internas, que fornecem apenas o menor privilégio necessário:
- Administrador de Dispositivo de Nuvem
- Administrador de Dispositivo IoT
Solicitação HTTP
POST /directory/certificateAuthorities/mutualTlsOauthConfigurations
| 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 da solicitação, forneça uma representação JSON do objeto mutualTlsOauthConfiguration .
Você pode especificar as propriedades a seguir ao criar um mutualTlsOauthConfiguration.
| Propriedade |
Tipo |
Descrição |
| certificateAuthority |
coleção certificateAuthority |
Propriedade de vários valores que representa uma lista de autoridades de certificação confiáveis. Opcional. |
| displayName |
Cadeia de caracteres |
Nome amigável. Opcional. |
| tlsClientAuthParameter |
tlsClientRegistrationMetadata |
Especifica qual campo no certificado contém a ID da entidade. Os valores possíveis são: tls_client_auth_subject_dn, tls_client_auth_san_dns, tls_client_auth_san_uri, tls_client_auth_san_ip, tls_client_auth_san_email, unknownFutureValue. Obrigatório. Somente leitura. |
Resposta
Se for bem-sucedido, esse método retornará um código de 201 Created resposta e um objeto mutualTlsOauthConfiguration no corpo da resposta. Se ocorrer uma falha de validação durante as etapas de validação do certificado, o método retornará um junto com a mensagem de 400 Bad Request erro, Invalid value specified for property 'certificate' of resource 'CertificateAuthorityInformation'..
Para obter mais informações, consulte Tipos de recursos e respostas de erro do Microsoft Graph.
Exemplos
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/directory/certificateAuthorities/mutualTlsOauthConfigurations
Content-Type: application/json
{
"displayName": "DoorCamera_Model_X_TrustedCAs",
"tlsClientAuthParameter": "tls_client_auth_san_uri",
"certificateAuthorities": [
{
"@odata.type": "microsoft.graph.certificateAuthority"
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new MutualTlsOauthConfiguration
{
DisplayName = "DoorCamera_Model_X_TrustedCAs",
TlsClientAuthParameter = TlsClientRegistrationMetadata.Tls_client_auth_san_uri,
CertificateAuthorities = new List<CertificateAuthority>
{
new CertificateAuthority
{
OdataType = "microsoft.graph.certificateAuthority",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Directory.CertificateAuthorities.MutualTlsOauthConfigurations.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"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewMutualTlsOauthConfiguration()
displayName := "DoorCamera_Model_X_TrustedCAs"
requestBody.SetDisplayName(&displayName)
tlsClientAuthParameter := graphmodels.TLS_CLIENT_AUTH_SAN_URI_TLSCLIENTREGISTRATIONMETADATA
requestBody.SetTlsClientAuthParameter(&tlsClientAuthParameter)
certificateAuthority := graphmodels.NewCertificateAuthority()
certificateAuthorities := []graphmodels.CertificateAuthorityable {
certificateAuthority,
}
requestBody.SetCertificateAuthorities(certificateAuthorities)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
mutualTlsOauthConfigurations, err := graphClient.Directory().CertificateAuthorities().MutualTlsOauthConfigurations().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
MutualTlsOauthConfiguration mutualTlsOauthConfiguration = new MutualTlsOauthConfiguration();
mutualTlsOauthConfiguration.setDisplayName("DoorCamera_Model_X_TrustedCAs");
mutualTlsOauthConfiguration.setTlsClientAuthParameter(TlsClientRegistrationMetadata.Tls_client_auth_san_uri);
LinkedList<CertificateAuthority> certificateAuthorities = new LinkedList<CertificateAuthority>();
CertificateAuthority certificateAuthority = new CertificateAuthority();
certificateAuthority.setOdataType("microsoft.graph.certificateAuthority");
certificateAuthorities.add(certificateAuthority);
mutualTlsOauthConfiguration.setCertificateAuthorities(certificateAuthorities);
MutualTlsOauthConfiguration result = graphClient.directory().certificateAuthorities().mutualTlsOauthConfigurations().post(mutualTlsOauthConfiguration);
const options = {
authProvider,
};
const client = Client.init(options);
const mutualTlsOauthConfiguration = {
displayName: 'DoorCamera_Model_X_TrustedCAs',
tlsClientAuthParameter: 'tls_client_auth_san_uri',
certificateAuthorities: [
{
'@odata.type': 'microsoft.graph.certificateAuthority'
}
]
};
await client.api('/directory/certificateAuthorities/mutualTlsOauthConfigurations')
.version('beta')
.post(mutualTlsOauthConfiguration);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\MutualTlsOauthConfiguration;
use Microsoft\Graph\Beta\Generated\Models\TlsClientRegistrationMetadata;
use Microsoft\Graph\Beta\Generated\Models\CertificateAuthority;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new MutualTlsOauthConfiguration();
$requestBody->setDisplayName('DoorCamera_Model_X_TrustedCAs');
$requestBody->setTlsClientAuthParameter(new TlsClientRegistrationMetadata('tls_client_auth_san_uri'));
$certificateAuthoritiesCertificateAuthority1 = new CertificateAuthority();
$certificateAuthoritiesCertificateAuthority1->setOdataType('microsoft.graph.certificateAuthority');
$certificateAuthoritiesArray []= $certificateAuthoritiesCertificateAuthority1;
$requestBody->setCertificateAuthorities($certificateAuthoritiesArray);
$result = $graphServiceClient->directory()->certificateAuthorities()->mutualTlsOauthConfigurations()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
$params = @{
displayName = "DoorCamera_Model_X_TrustedCAs"
tlsClientAuthParameter = "tls_client_auth_san_uri"
certificateAuthorities = @(
@{
"@odata.type" = "microsoft.graph.certificateAuthority"
}
)
}
New-MgBetaDirectoryCertificateAuthorityMutualTlOauthConfiguration -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.mutual_tls_oauth_configuration import MutualTlsOauthConfiguration
from msgraph_beta.generated.models.tls_client_registration_metadata import TlsClientRegistrationMetadata
from msgraph_beta.generated.models.certificate_authority import CertificateAuthority
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = MutualTlsOauthConfiguration(
display_name = "DoorCamera_Model_X_TrustedCAs",
tls_client_auth_parameter = TlsClientRegistrationMetadata.Tls_client_auth_san_uri,
certificate_authorities = [
CertificateAuthority(
odata_type = "microsoft.graph.certificateAuthority",
),
],
)
result = await graph_client.directory.certificate_authorities.mutual_tls_oauth_configurations.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#directory/certificateAuthorities/mutualTlsOauthConfigurations/$entity",
"id":"eec5ba11-2fc0-4113-83a2-ed986ed13cdb",
"displayName": "DoorCamera_Model_X_TrustedCAs",
"tlsClientAuthParameter": "tls_client_auth_san_uri",
"certificateAuthorities": [
{
"@odata.type": "microsoft.graph.certificateAuthority"
}
]
}