Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Anexe detalles adicionales de la entidad de certificación a un recurso certificateBasedAuthPki . Solo se puede ejecutar una operación a la vez y esta operación puede tardar hasta 30 minutos en completarse. Para saber si hay otra carga en curso, llame a Get certificateBasedAuthPki. La propiedad status tendrá el valor running.
Esta API está disponible en las siguientes implementaciones en la nube nacional.
| Servicio global |
Administración pública de EE. UU. |
Gobierno de EE. UU. L5 (DOD) |
China operado por 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use uno o varios permisos con privilegios más altos solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
| Tipo de permiso |
Permisos con privilegios mínimos |
Permisos con privilegios más altos |
| Delegado (cuenta profesional o educativa) |
PublicKeyInfrastructure.ReadWrite.All |
No disponible. |
| Delegado (cuenta personal de Microsoft) |
No admitida. |
No admitida. |
| Aplicación |
PublicKeyInfrastructure.ReadWrite.All |
No disponible. |
Importante
Para el acceso delegado mediante cuentas profesionales o educativas en las que el usuario que ha iniciado sesión actúa sobre otro usuario, se le debe asignar un rol compatible de Microsoft Entra o un rol personalizado que conceda los permisos necesarios para esta operación. Esta operación admite los siguientes roles integrados, que proporcionan solo el privilegio mínimo necesario:
- Administrador de autenticación con privilegios
- Administrador de autenticación
Solicitud HTTP
POST /directory/publicKeyInfrastructure/certificateBasedAuthConfigurations/{certificateBasedAuthPkiId}/upload
| Nombre |
Descripción |
| Authorization |
{token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización. |
| Content-Type |
application/json. Obligatorio. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione una representación JSON de los parámetros.
En la tabla siguiente se enumeran los parámetros necesarios al llamar a esta acción.
| Parámetro |
Tipo |
Descripción |
| uploadUrl |
Cadena |
Dirección URL donde el servicio puede descargar el archivo PKI y rellenar el archivo certificateAuthorities. Puede ser cualquier dirección URL http o https de acceso público orientado a Internet. |
| sha256FileHash |
Cadena |
Una secuencia de números y letras para comprobar que la copia de un archivo de actualización descargado es idéntica al original. Esto se puede calcular mediante el cmdlet Get_FileHash. |
Respuesta
Si se ejecuta correctamente, esta acción devuelve un código de respuesta 204 No Content. Si hay otra carga en curso, esta API devuelve un mensaje de error 400 Bad Request. Al intentar cargar un certificado duplicado, se muestra un mensaje de error "400 Bad Request Code with a Duplicate Certificate exists".
Ejemplos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
POST https://graph.microsoft.com/beta/directory/publicKeyInfrastructure/certificateBasedAuthConfigurations/{certificateBasedAuthPkiId}/upload
Content-Type: application/json
{
"uploadUrl": "https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b",
"sha256FileHash": "D7F9....61E6F"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.DirectoryNamespace.PublicKeyInfrastructure.CertificateBasedAuthConfigurations.Item.Upload;
var requestBody = new UploadPostRequestBody
{
UploadUrl = "https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b",
Sha256FileHash = "D7F9....61E6F",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Directory.PublicKeyInfrastructure.CertificateBasedAuthConfigurations["{certificateBasedAuthPki-id}"].Upload.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"
graphdirectory "github.com/microsoftgraph/msgraph-beta-sdk-go/directory"
//other-imports
)
requestBody := graphdirectory.NewUploadPostRequestBody()
uploadUrl := "https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b"
requestBody.SetUploadUrl(&uploadUrl)
sha256FileHash := "D7F9....61E6F"
requestBody.SetSha256FileHash(&sha256FileHash)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Directory().PublicKeyInfrastructure().CertificateBasedAuthConfigurations().ByCertificateBasedAuthPkiId("certificateBasedAuthPki-id").Upload().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.directory.publickeyinfrastructure.certificatebasedauthconfigurations.item.upload.UploadPostRequestBody uploadPostRequestBody = new com.microsoft.graph.beta.directory.publickeyinfrastructure.certificatebasedauthconfigurations.item.upload.UploadPostRequestBody();
uploadPostRequestBody.setUploadUrl("https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b");
uploadPostRequestBody.setSha256FileHash("D7F9....61E6F");
graphClient.directory().publicKeyInfrastructure().certificateBasedAuthConfigurations().byCertificateBasedAuthPkiId("{certificateBasedAuthPki-id}").upload().post(uploadPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const upload = {
uploadUrl: 'https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b',
sha256FileHash: 'D7F9....61E6F'
};
await client.api('/directory/publicKeyInfrastructure/certificateBasedAuthConfigurations/{certificateBasedAuthPkiId}/upload')
.version('beta')
.post(upload);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Directory\PublicKeyInfrastructure\CertificateBasedAuthConfigurations\Item\Upload\UploadPostRequestBody;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new UploadPostRequestBody();
$requestBody->setUploadUrl('https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b');
$requestBody->setSha256FileHash('D7F9....61E6F');
$graphServiceClient->directory()->publicKeyInfrastructure()->certificateBasedAuthConfigurations()->byCertificateBasedAuthPkiId('certificateBasedAuthPki-id')->upload()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
$params = @{
uploadUrl = "https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b"
sha256FileHash = "D7F9....61E6F"
}
Invoke-MgBetaUploadDirectoryPublicKeyInfrastructureCertificateBasedAuthConfiguration -CertificateBasedAuthPkiId $certificateBasedAuthPkiId -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.directory.publickeyinfrastructure.certificatebasedauthconfigurations.item.upload.upload_post_request_body import UploadPostRequestBody
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = UploadPostRequestBody(
upload_url = "https://microsoft.sharepoint.com/CBA/demo/CBARootPKI.p7b",
sha256_file_hash = "D7F9....61E6F",
)
await graph_client.directory.public_key_infrastructure.certificate_based_auth_configurations.by_certificate_based_auth_pki_id('certificateBasedAuthPki-id').upload.post(request_body)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 204 No Content