创建 enterpriseCodeSigningCertificate
本文内容
命名空间: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。 不支持 $搜索。 只读。
content
二进制
原始数据格式的 Windows 企业版 Code-Signing 证书。 上传证书并填充其他属性后,将 设置为 null。
status
certificateStatus
证书状态是否已预配。 可能的值为:notProvisioned、provisioned。 默认值为 NotProvisioned。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。 可取值为:notProvisioned
、provisioned
。
SubjectName
String
证书的使用者名称。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。
subject
String
证书的主题值。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。
issuerName
String
证书的颁发者名称。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。
发行
String
证书的颁发者值。这可能包含国家/地区 (C) 、州或省/自治区 (S) 、地区 (L) 、证书 (CN) 的公用名称、组织 (O) ,以及组织单位 (OU) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。
expirationDateTime
DateTimeOffset
证书过期日期和时间 (使用 ISO 8601 格式(UTC 时间) )。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。
uploadDateTime
DateTimeOffset
使用 ISO 8601 格式上传 CodeSigning Cert 的日期时间 (UTC 时间) 。 通过 Intune 管理控制台上传有效的证书文件将自动在 HTTP 响应中填充此值。 支持:$filter、$select、$top、$OrderBy、$skip。 不支持 $搜索。
响应
如果成功,此方法在 201 Created
响应正文中返回响应代码和 enterpriseCodeSigningCertificate 对象。
示例
请求
下面是一个请求示例。
POST https://graph.microsoft.com/beta/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://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DeviceAppManagement.EnterpriseCodeSigningCertificates.PostAsync(requestBody);
有关如何将 SDK 添加 到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档 。
// THE CLI IS IN PREVIEW. NON-PRODUCTION USE ONLY
mgc-beta device-app-management enterprise-code-signing-certificates create --body '{\
"@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"\
}\
'
有关如何将 SDK 添加 到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档 。
import (
"context"
"time"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
graphClient := msgraphsdk.NewGraphServiceClientWithCredentials(cred, scopes)
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)
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\GraphServiceClient;
use Microsoft\Graph\Generated\Models\EnterpriseCodeSigningCertificate;
$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 文档 。
from msgraph import GraphServiceClient
from msgraph.generated.models.enterprise_code_signing_certificate import EnterpriseCodeSigningCertificate
graph_client = GraphServiceClient(credentials, scopes)
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"
}