servicePrincipal: addTokenSigningCertificate

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.

Crea un certificado de firma autofirmado y devuelve un objeto selfSignedCertificate , que es la parte pública del certificado generado. El certificado de firma autofirmado se compone de los siguientes objetos que se agregan al servicePrincipal:

  • Objeto keyCredentials con los siguientes objetos:
    • Objeto de clave privada con el uso establecido en Sign.
    • Objeto de clave pública con el uso establecido en Verify.
  • Objeto passwordCredentials .

Todos los objetos tienen el mismo valor de customKeyIdentifier.

PasswordCredential se usa para abrir el archivo PFX (clave privada). Él y el objeto de clave privada asociado tienen el mismo valor de keyId. Una vez establecido durante la creación a través de la propiedad displayName , no se puede actualizar el asunto del certificado. StartDateTime se establece en el mismo momento en que se crea el certificado mediante la acción . EndDateTime puede ser hasta tres años después de crear el certificado.

Esta API está disponible en las siguientes implementaciones nacionales de nube.

Servicio global Gobierno de EE. UU. L4 Us Government L5 (DOD) China operada por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores 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) Application.ReadWrite.All Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación Application.ReadWrite.OwnedBy Application.ReadWrite.All, Directory.ReadWrite.All

Solicitud HTTP

Puede dirigirse a la entidad de servicio mediante su id . o appId. id y appId se conocen como id. de objeto y id. de aplicación (cliente), respectivamente, en los registros de aplicaciones en el Centro de administración Microsoft Entra.

POST /servicePrincipals/{id}/addTokenSigningCertificate
POST /servicePrincipals(appId='{appId}')/addTokenSigningCertificate

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione las siguientes propiedades necesarias.

Propiedad Tipo Descripción
displayName string Nombre descriptivo de la clave. Debe empezar por CN=.
endDateTime DateTimeOffset Fecha y hora en que expira la credencial. Puede ser hasta 3 años a partir de la fecha en que se crea el certificado. Si no se proporciona, el valor predeterminado es de tres años a partir del momento de la creación. El tipo de marca de tiempo representa la información de fecha y hora con el formato ISO 8601 y siempre está en hora UTC. Por ejemplo, la medianoche en la zona horaria UTC del 1 de enero de 2014 sería 2014-01-01T00:00:00Z.

Respuesta

Si se ejecuta correctamente, este método devuelve un 200 OK código de respuesta y un nuevo objeto selfSignedCertificate en el cuerpo de la respuesta.

Ejemplos

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/servicePrincipals/004375c5-6e2e-4dec-95e3-626838cb9f80/addTokenSigningCertificate
Content-type: application/json

{
    "displayName":"CN=customDisplayName",
    "endDateTime":"2024-01-25T00:00:00Z"
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.selfSignedCertificate",
  "customKeyIdentifier": "2iD8ppbE+D6Kmu1ZvjM2jtQh88E=",
  "displayName": "CN=customDisplayName",
  "endDateTime": "2024-01-25T00:00:00Z",
  "key": "MIICuDCCAaCgAwIBAgIIYXJsNtL4oUMwDQYJKoZIhvcNAQEL...StP8s/w==",
  "keyId": "93bc223f-7235-4b9c-beea-d66847531c49",
  "startDateTime": "2021-05-05T18:38:51.8100763Z",
  "thumbprint": "DA20FCA696C4F83E8A9AED59BE33368ED421F3C1",
  "type": "AsymmetricX509Cert",
  "usage": "Verify"
}