命名空间:microsoft.graph
注意:适用于 Intune 的 Microsoft Graph API 需要适用于租户的活动 Intune 许可证。
创建新的 enterpriseCodeSigningCertificate 对象。
权限
要调用此 API,需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
DeviceManagementApps.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
不支持。 |
| 应用程序 |
DeviceManagementApps.ReadWrite.All |
HTTP 请求
POST /deviceAppManagement/enterpriseCodeSigningCertificates
| 标头 |
值 |
| Authorization |
持有者 {token}。 必填。 详细了解 身份验证和授权。 |
| 接受 |
application/json |
请求正文
在请求正文中,提供 enterpriseCodeSigningCertificate 对象的 JSON 表示形式。
下表显示了创建 enterpriseCodeSigningCertificate 时所需的属性。
| 属性 |
类型 |
说明 |
| id |
String |
创建时分配的证书的唯一标识符。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 只读。 |
| content |
Binary |
原始数据格式的 Windows 企业版 Code-Signing 证书。 上传证书并填充其他属性后,将 设置为 null。 |
| status |
certificateStatus |
证书状态是否已预配。 可能的值为:notProvisioned、provisioned。 默认值为 NotProvisioned。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 可能的值为: notProvisioned、 provisioned。 |
| SubjectName |
String |
证书的使用者名称。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 |
| subject |
String |
证书的主题值。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 |
| issuerName |
String |
证书的颁发者名称。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 |
| 发行 |
String |
证书的颁发者值。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 |
| expirationDateTime |
DateTimeOffset |
证书过期日期和时间 (使用 ISO 8601 格式(UTC 时间) )。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 |
| uploadDateTime |
DateTimeOffset |
使用 ISO 8601 格式上传 CodeSigning Cert 的日期时间 (UTC 时间) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持$Search。 |
响应
如果成功,此方法在 201 Created 响应正文中返回响应代码和 enterpriseCodeSigningCertificate 对象。
示例
请求
下面是一个请求示例。
POST https://graph.microsoft.com/v1.0/deviceAppManagement/enterpriseCodeSigningCertificates
Content-type: application/json
Content-length: 390
{
"@odata.type": "#microsoft.graph.enterpriseCodeSigningCertificate",
"content": "Y29udGVudA==",
"status": "provisioned",
"subjectName": "Subject Name value",
"subject": "Subject value",
"issuerName": "Issuer Name value",
"issuer": "Issuer value",
"expirationDateTime": "2016-12-31T23:57:57.2481234-08:00",
"uploadDateTime": "2016-12-31T23:58:46.5747426-08:00"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new EnterpriseCodeSigningCertificate
{
OdataType = "#microsoft.graph.enterpriseCodeSigningCertificate",
Content = Convert.FromBase64String("Y29udGVudA=="),
Status = CertificateStatus.Provisioned,
SubjectName = "Subject Name value",
Subject = "Subject value",
IssuerName = "Issuer Name value",
Issuer = "Issuer value",
ExpirationDateTime = DateTimeOffset.Parse("2016-12-31T23:57:57.2481234-08:00"),
UploadDateTime = DateTimeOffset.Parse("2016-12-31T23:58:46.5747426-08:00"),
};
// To initialize your graphClient, see https://dori-uw-1.kuma-moon.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DeviceAppManagement.EnterpriseCodeSigningCertificates.PostAsync(requestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
"time"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewEnterpriseCodeSigningCertificate()
content := []byte("y29udGVudA==")
requestBody.SetContent(&content)
status := graphmodels.PROVISIONED_CERTIFICATESTATUS
requestBody.SetStatus(&status)
subjectName := "Subject Name value"
requestBody.SetSubjectName(&subjectName)
subject := "Subject value"
requestBody.SetSubject(&subject)
issuerName := "Issuer Name value"
requestBody.SetIssuerName(&issuerName)
issuer := "Issuer value"
requestBody.SetIssuer(&issuer)
expirationDateTime , err := time.Parse(time.RFC3339, "2016-12-31T23:57:57.2481234-08:00")
requestBody.SetExpirationDateTime(&expirationDateTime)
uploadDateTime , err := time.Parse(time.RFC3339, "2016-12-31T23:58:46.5747426-08:00")
requestBody.SetUploadDateTime(&uploadDateTime)
// To initialize your graphClient, see https://dori-uw-1.kuma-moon.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
enterpriseCodeSigningCertificates, err := graphClient.DeviceAppManagement().EnterpriseCodeSigningCertificates().Post(context.Background(), requestBody, nil)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
EnterpriseCodeSigningCertificate enterpriseCodeSigningCertificate = new EnterpriseCodeSigningCertificate();
enterpriseCodeSigningCertificate.setOdataType("#microsoft.graph.enterpriseCodeSigningCertificate");
byte[] content = Base64.getDecoder().decode("Y29udGVudA==");
enterpriseCodeSigningCertificate.setContent(content);
enterpriseCodeSigningCertificate.setStatus(CertificateStatus.Provisioned);
enterpriseCodeSigningCertificate.setSubjectName("Subject Name value");
enterpriseCodeSigningCertificate.setSubject("Subject value");
enterpriseCodeSigningCertificate.setIssuerName("Issuer Name value");
enterpriseCodeSigningCertificate.setIssuer("Issuer value");
OffsetDateTime expirationDateTime = OffsetDateTime.parse("2016-12-31T23:57:57.2481234-08:00");
enterpriseCodeSigningCertificate.setExpirationDateTime(expirationDateTime);
OffsetDateTime uploadDateTime = OffsetDateTime.parse("2016-12-31T23:58:46.5747426-08:00");
enterpriseCodeSigningCertificate.setUploadDateTime(uploadDateTime);
EnterpriseCodeSigningCertificate result = graphClient.deviceAppManagement().enterpriseCodeSigningCertificates().post(enterpriseCodeSigningCertificate);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const enterpriseCodeSigningCertificate = {
'@odata.type': '#microsoft.graph.enterpriseCodeSigningCertificate',
content: 'Y29udGVudA==',
status: 'provisioned',
subjectName: 'Subject Name value',
subject: 'Subject value',
issuerName: 'Issuer Name value',
issuer: 'Issuer value',
expirationDateTime: '2016-12-31T23:57:57.2481234-08:00',
uploadDateTime: '2016-12-31T23:58:46.5747426-08:00'
};
await client.api('/deviceAppManagement/enterpriseCodeSigningCertificates')
.version('beta')
.post(enterpriseCodeSigningCertificate);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\EnterpriseCodeSigningCertificate;
use Microsoft\Graph\Beta\Generated\Models\CertificateStatus;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new EnterpriseCodeSigningCertificate();
$requestBody->setOdataType('#microsoft.graph.enterpriseCodeSigningCertificate');
$requestBody->setContent(\GuzzleHttp\Psr7\Utils::streamFor(base64_decode('Y29udGVudA==')));
$requestBody->setStatus(new CertificateStatus('provisioned'));
$requestBody->setSubjectName('Subject Name value');
$requestBody->setSubject('Subject value');
$requestBody->setIssuerName('Issuer Name value');
$requestBody->setIssuer('Issuer value');
$requestBody->setExpirationDateTime(new \DateTime('2016-12-31T23:57:57.2481234-08:00'));
$requestBody->setUploadDateTime(new \DateTime('2016-12-31T23:58:46.5747426-08:00'));
$result = $graphServiceClient->deviceAppManagement()->enterpriseCodeSigningCertificates()->post($requestBody)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
Import-Module Microsoft.Graph.Beta.Devices.CorporateManagement
$params = @{
"@odata.type" = "#microsoft.graph.enterpriseCodeSigningCertificate"
content = [System.Text.Encoding]::ASCII.GetBytes("Y29udGVudA==")
status = "provisioned"
subjectName = "Subject Name value"
subject = "Subject value"
issuerName = "Issuer Name value"
issuer = "Issuer value"
expirationDateTime = [System.DateTime]::Parse("2016-12-31T23:57:57.2481234-08:00")
uploadDateTime = [System.DateTime]::Parse("2016-12-31T23:58:46.5747426-08:00")
}
New-MgBetaDeviceAppManagementEnterpriseCodeSigningCertificate -BodyParameter $params
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.enterprise_code_signing_certificate import EnterpriseCodeSigningCertificate
from msgraph_beta.generated.models.certificate_status import CertificateStatus
# To initialize your graph_client, see https://dori-uw-1.kuma-moon.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = EnterpriseCodeSigningCertificate(
odata_type = "#microsoft.graph.enterpriseCodeSigningCertificate",
content = base64.urlsafe_b64decode("Y29udGVudA=="),
status = CertificateStatus.Provisioned,
subject_name = "Subject Name value",
subject = "Subject value",
issuer_name = "Issuer Name value",
issuer = "Issuer value",
expiration_date_time = "2016-12-31T23:57:57.2481234-08:00",
upload_date_time = "2016-12-31T23:58:46.5747426-08:00",
)
result = await graph_client.device_app_management.enterprise_code_signing_certificates.post(request_body)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
下面是一个响应示例。 注意:为简洁起见,可能会截断此处显示的响应对象。 将从实际调用中返回所有属性。
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 439
{
"@odata.type": "#microsoft.graph.enterpriseCodeSigningCertificate",
"id": "b20d3703-3703-b20d-0337-0db203370db2",
"content": "Y29udGVudA==",
"status": "provisioned",
"subjectName": "Subject Name value",
"subject": "Subject value",
"issuerName": "Issuer Name value",
"issuer": "Issuer value",
"expirationDateTime": "2016-12-31T23:57:57.2481234-08:00",
"uploadDateTime": "2016-12-31T23:58:46.5747426-08:00"
}