创建 accessPackageAssignmentRequest
本文内容
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
在 Azure AD 权利管理 中,创建新的 accessPackageAssignmentRequest 对象。 此操作用于将用户分配到访问包或删除访问包分配。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限 。
权限类型
权限(从最低特权到最高特权)
委派(工作或学校帐户)
EntitlementManagement.ReadWrite.All
委派(个人 Microsoft 帐户)
不支持。
应用程序
EntitlementManagement.ReadWrite.All
HTTP 请求
POST /identityGovernance/entitlementManagement/accessPackageAssignmentRequests
名称
说明
Authorization
持有者 {token}。 必需。
Content-Type
application/json. Required.
请求正文
在请求正文中,提供 accessPackageAssignmentRequest 对象的 JSON 表示形式。
对于请求为用户创建分配的管理员,requestType 属性的值为 AdminAddaccessPackageAssignment 属性包含targetId所分配用户的值、标识 accessPackageAssignmentPolicy 的 assignmentPolicyId 属性以及标识 accessPackage 的 accessPackageId 属性。
对于请求删除分配的管理员,requestType 属性的值为AdminRemove,accessPackageAssignment 属性包含标识要删除 的 accessPackageAssignment 的 ID 属性。
对于非管理员用户请求为第一个分配或续订分配创建自己的分配, requestType 属性的值为 UserAdd。 accessPackageAssignment 属性包含targetId``id用户的属性。 assignmentPolicyId 属性标识 accessPackageAssignmentPolicy 。 accessPackageId 属性标识 accessPackage 。 发出请求的用户必须已存在于目录中。
对于要请求扩展其自身分配的非管理员用户, requestType 属性的值为 UserExtend。 accessPackageAssignment 属性包含targetId``id用户的属性。 assignmentPolicyId 属性标识 accessPackageAssignmentPolicy 。 accessPackageId 属性标识 accessPackage 。 发出请求的用户必须已存在于目录中。
响应
如果成功,此方法在响应正文中返回 200 系列响应代码和新的 accessPackageAssignmentRequest 对象。
如果这是请求 AdminAdd ,则随后会创建 accessPackageAssignment ,如果需要,还会创建 accessPackageSubject 。 列出 accessPackageAssignments 时,可以查找使用查询参数的用户。
示例
示例 1:管理员为已在目录中的用户请求直接分配
请求
下面是直接分配请求的示例,管理员在其中请求为用户创建分配。 由于 accessPackageSubject 可能尚不存在, 因此 targetID 的值是所分配用户的对象 ID, accessPackageId 的值是该用户所需的访问包, assignmentPolicyId 的值是该访问包中的直接分配策略。
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests
Content-type: application/json
{
"requestType": "AdminAdd",
"accessPackageAssignment":{
"targetId":"46184453-e63b-4f20-86c2-c557ed5d5df9",
"assignmentPolicyId":"2264bf65-76ba-417b-a27d-54d291f0cbc8",
"accessPackageId":"a914b616-e04e-476b-aa37-91038f0b165b"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var accessPackageAssignmentRequest = new AccessPackageAssignmentRequestObject
{
RequestType = "AdminRemove",
AccessPackageAssignment = new AccessPackageAssignment
{
Id = "a6bb6942-3ae1-4259-9908-0133aaee9377"
}
};
await graphClient.IdentityGovernance.EntitlementManagement.AccessPackageAssignmentRequests
.Request()
.AddAsync(accessPackageAssignmentRequest);
const options = {
authProvider,
};
const client = Client.init(options);
const accessPackageAssignmentRequest = {
requestType: 'AdminRemove',
accessPackageAssignment: {
id: 'a6bb6942-3ae1-4259-9908-0133aaee9377'
}
};
await client.api('/identityGovernance/entitlementManagement/accessPackageAssignmentRequests')
.version('beta')
.post(accessPackageAssignmentRequest);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/identityGovernance/entitlementManagement/accessPackageAssignmentRequests"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphAccessPackageAssignmentRequest *accessPackageAssignmentRequest = [[MSGraphAccessPackageAssignmentRequest alloc] init];
[accessPackageAssignmentRequest setRequestType:@"AdminRemove"];
MSGraphAccessPackageAssignment *accessPackageAssignment = [[MSGraphAccessPackageAssignment alloc] init];
[accessPackageAssignment setId:@"a6bb6942-3ae1-4259-9908-0133aaee9377"];
[accessPackageAssignmentRequest setAccessPackageAssignment:accessPackageAssignment];
NSError *error;
NSData *accessPackageAssignmentRequestData = [accessPackageAssignmentRequest getSerializedDataWithError:&error];
[urlRequest setHTTPBody:accessPackageAssignmentRequestData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
AccessPackageAssignmentRequest accessPackageAssignmentRequest = new AccessPackageAssignmentRequest();
accessPackageAssignmentRequest.requestType = "AdminRemove";
AccessPackageAssignment accessPackageAssignment = new AccessPackageAssignment();
accessPackageAssignment.id = "a6bb6942-3ae1-4259-9908-0133aaee9377";
accessPackageAssignmentRequest.accessPackageAssignment = accessPackageAssignment;
graphClient.identityGovernance().entitlementManagement().accessPackageAssignmentRequests()
.buildRequest()
.post(accessPackageAssignmentRequest);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewAccessPackageAssignmentRequest()
requestType := "AdminRemove"
requestBody.SetRequestType(&requestType)
accessPackageAssignment := msgraphsdk.NewAccessPackageAssignment()
requestBody.SetAccessPackageAssignment(accessPackageAssignment)
id := "a6bb6942-3ae1-4259-9908-0133aaee9377"
accessPackageAssignment.SetId(&id)
result, err := graphClient.IdentityGovernance().EntitlementManagement().AccessPackageAssignmentRequests().Post(requestBody)
Import-Module Microsoft.Graph.Identity.Governance
$params = @{
RequestType = "AdminRemove"
AccessPackageAssignment = @{
Id = "a6bb6942-3ae1-4259-9908-0133aaee9377"
}
}
New-MgEntitlementManagementAccessPackageAssignmentRequest -BodyParameter $params
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"id": "7e382d02-4454-436b-b700-59c7dd77f466",
"requestType": "AdminAdd",
"requestState": "Submitted",
"requestStatus": "Accepted",
"isValidationOnly": false
}
示例 2:用户请求包并回答审批问题
请求
下面是请求的示例,请求者向审批者提供了答案,以帮助他们做出决策。
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests
Content-type: application/json
{
"requestType": "UserAdd",
"accessPackageAssignment": {
"targetId": "46184453-e63b-4f20-86c2-c557ed5d5df9",
"assignmentPolicyId": "2264bf65-76ba-417b-a27d-54d291f0cbc8",
"accessPackageId": "a914b616-e04e-476b-aa37-91038f0b165b"
},
"answers": [
{
"@odata.type": "#microsoft.graph.accessPackageAnswerString",
"value": "Arizona",
"answeredQuestion": {
"@odata.type": "#microsoft.graph.accessPackageMultipleChoiceQuestion",
"id": "A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF"
}
},
{
"@odata.type": "#microsoft.graph.accessPackageAnswerString",
"value": "Need access to marketing campaign material",
"answeredQuestion": {
"@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
"id": "AA615EE9-D9D8-4C03-BE91-BEE37106DEDA"
}
}
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var accessPackageAssignmentRequest = new AccessPackageAssignmentRequestObject
{
RequestType = "UserAdd",
AccessPackageAssignment = new AccessPackageAssignment
{
TargetId = "46184453-e63b-4f20-86c2-c557ed5d5df9",
AssignmentPolicyId = "2264bf65-76ba-417b-a27d-54d291f0cbc8",
AccessPackageId = "a914b616-e04e-476b-aa37-91038f0b165b"
},
Answers = new List<AccessPackageAnswer>()
{
new AccessPackageAnswerString
{
Value = "Arizona",
AnsweredQuestion = new AccessPackageMultipleChoiceQuestion
{
Id = "A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF"
}
},
new AccessPackageAnswerString
{
Value = "Need access to marketing campaign material",
AnsweredQuestion = new AccessPackageTextInputQuestion
{
Id = "AA615EE9-D9D8-4C03-BE91-BEE37106DEDA"
}
}
}
};
await graphClient.IdentityGovernance.EntitlementManagement.AccessPackageAssignmentRequests
.Request()
.AddAsync(accessPackageAssignmentRequest);
const options = {
authProvider,
};
const client = Client.init(options);
const accessPackageAssignmentRequest = {
requestType: 'UserAdd',
accessPackageAssignment: {
targetId: '46184453-e63b-4f20-86c2-c557ed5d5df9',
assignmentPolicyId: '2264bf65-76ba-417b-a27d-54d291f0cbc8',
accessPackageId: 'a914b616-e04e-476b-aa37-91038f0b165b'
},
answers: [
{
'@odata.type': '#microsoft.graph.accessPackageAnswerString',
value: 'Arizona',
answeredQuestion: {
'@odata.type': '#microsoft.graph.accessPackageMultipleChoiceQuestion',
id: 'A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF'
}
},
{
'@odata.type': '#microsoft.graph.accessPackageAnswerString',
value: 'Need access to marketing campaign material',
answeredQuestion: {
'@odata.type': '#microsoft.graph.accessPackageTextInputQuestion',
id: 'AA615EE9-D9D8-4C03-BE91-BEE37106DEDA'
}
}
]
};
await client.api('/identityGovernance/entitlementManagement/accessPackageAssignmentRequests')
.version('beta')
.post(accessPackageAssignmentRequest);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/identityGovernance/entitlementManagement/accessPackageAssignmentRequests"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphAccessPackageAssignmentRequest *accessPackageAssignmentRequest = [[MSGraphAccessPackageAssignmentRequest alloc] init];
[accessPackageAssignmentRequest setRequestType:@"UserAdd"];
MSGraphAccessPackageAssignment *accessPackageAssignment = [[MSGraphAccessPackageAssignment alloc] init];
[accessPackageAssignment setTargetId:@"46184453-e63b-4f20-86c2-c557ed5d5df9"];
[accessPackageAssignment setAssignmentPolicyId:@"2264bf65-76ba-417b-a27d-54d291f0cbc8"];
[accessPackageAssignment setAccessPackageId:@"a914b616-e04e-476b-aa37-91038f0b165b"];
[accessPackageAssignmentRequest setAccessPackageAssignment:accessPackageAssignment];
NSMutableArray *answersList = [[NSMutableArray alloc] init];
MSGraphAccessPackageAnswer *answers = [[MSGraphAccessPackageAnswer alloc] init];
[answers setValue:@"Arizona"];
MSGraphAccessPackageQuestion *answeredQuestion = [[MSGraphAccessPackageQuestion alloc] init];
[answeredQuestion setId:@"A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF"];
[answers setAnsweredQuestion:answeredQuestion];
[answersList addObject: answers];
MSGraphAccessPackageAnswer *answers = [[MSGraphAccessPackageAnswer alloc] init];
[answers setValue:@"Need access to marketing campaign material"];
MSGraphAccessPackageQuestion *answeredQuestion = [[MSGraphAccessPackageQuestion alloc] init];
[answeredQuestion setId:@"AA615EE9-D9D8-4C03-BE91-BEE37106DEDA"];
[answers setAnsweredQuestion:answeredQuestion];
[answersList addObject: answers];
[accessPackageAssignmentRequest setAnswers:answersList];
NSError *error;
NSData *accessPackageAssignmentRequestData = [accessPackageAssignmentRequest getSerializedDataWithError:&error];
[urlRequest setHTTPBody:accessPackageAssignmentRequestData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
AccessPackageAssignmentRequest accessPackageAssignmentRequest = new AccessPackageAssignmentRequest();
accessPackageAssignmentRequest.requestType = "UserAdd";
AccessPackageAssignment accessPackageAssignment = new AccessPackageAssignment();
accessPackageAssignment.targetId = "46184453-e63b-4f20-86c2-c557ed5d5df9";
accessPackageAssignment.assignmentPolicyId = "2264bf65-76ba-417b-a27d-54d291f0cbc8";
accessPackageAssignment.accessPackageId = "a914b616-e04e-476b-aa37-91038f0b165b";
accessPackageAssignmentRequest.accessPackageAssignment = accessPackageAssignment;
LinkedList<AccessPackageAnswer> answersList = new LinkedList<AccessPackageAnswer>();
AccessPackageAnswerString answers = new AccessPackageAnswerString();
answers.value = "Arizona";
AccessPackageMultipleChoiceQuestion answeredQuestion = new AccessPackageMultipleChoiceQuestion();
answeredQuestion.id = "A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF";
answers.answeredQuestion = answeredQuestion;
answersList.add(answers);
AccessPackageAnswerString answers1 = new AccessPackageAnswerString();
answers1.value = "Need access to marketing campaign material";
AccessPackageTextInputQuestion answeredQuestion1 = new AccessPackageTextInputQuestion();
answeredQuestion1.id = "AA615EE9-D9D8-4C03-BE91-BEE37106DEDA";
answers1.answeredQuestion = answeredQuestion1;
answersList.add(answers1);
accessPackageAssignmentRequest.answers = answersList;
graphClient.identityGovernance().entitlementManagement().accessPackageAssignmentRequests()
.buildRequest()
.post(accessPackageAssignmentRequest);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewAccessPackageAssignmentRequest()
requestType := "UserAdd"
requestBody.SetRequestType(&requestType)
accessPackageAssignment := msgraphsdk.NewAccessPackageAssignment()
requestBody.SetAccessPackageAssignment(accessPackageAssignment)
targetId := "46184453-e63b-4f20-86c2-c557ed5d5df9"
accessPackageAssignment.SetTargetId(&targetId)
assignmentPolicyId := "2264bf65-76ba-417b-a27d-54d291f0cbc8"
accessPackageAssignment.SetAssignmentPolicyId(&assignmentPolicyId)
accessPackageId := "a914b616-e04e-476b-aa37-91038f0b165b"
accessPackageAssignment.SetAccessPackageId(&accessPackageId)
requestBody.SetAnswers( []AccessPackageAnswer {
msgraphsdk.NewAccessPackageAnswer(),
answeredQuestion := msgraphsdk.NewAccessPackageQuestion()
SetAnsweredQuestion(answeredQuestion)
id := "A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF"
answeredQuestion.SetId(&id)
answeredQuestion.SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.accessPackageMultipleChoiceQuestion",
}
SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.accessPackageAnswerString",
"value": "Arizona",
}
msgraphsdk.NewAccessPackageAnswer(),
answeredQuestion := msgraphsdk.NewAccessPackageQuestion()
SetAnsweredQuestion(answeredQuestion)
id := "AA615EE9-D9D8-4C03-BE91-BEE37106DEDA"
answeredQuestion.SetId(&id)
answeredQuestion.SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
}
SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.accessPackageAnswerString",
"value": "Need access to marketing campaign material",
}
}
result, err := graphClient.IdentityGovernance().EntitlementManagement().AccessPackageAssignmentRequests().Post(requestBody)
Import-Module Microsoft.Graph.Identity.Governance
$params = @{
RequestType = "UserAdd"
AccessPackageAssignment = @{
TargetId = "46184453-e63b-4f20-86c2-c557ed5d5df9"
AssignmentPolicyId = "2264bf65-76ba-417b-a27d-54d291f0cbc8"
AccessPackageId = "a914b616-e04e-476b-aa37-91038f0b165b"
}
Answers = @(
@{
"@odata.type" = "#microsoft.graph.accessPackageAnswerString"
Value = "Arizona"
AnsweredQuestion = @{
"@odata.type" = "#microsoft.graph.accessPackageMultipleChoiceQuestion"
Id = "A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF"
}
}
@{
"@odata.type" = "#microsoft.graph.accessPackageAnswerString"
Value = "Need access to marketing campaign material"
AnsweredQuestion = @{
"@odata.type" = "#microsoft.graph.accessPackageTextInputQuestion"
Id = "AA615EE9-D9D8-4C03-BE91-BEE37106DEDA"
}
}
)
}
New-MgEntitlementManagementAccessPackageAssignmentRequest -BodyParameter $params
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"id": "7e382d02-4454-436b-b700-59c7dd77f466",
"requestType": "UserAdd",
"requestState": "Submitted",
"requestStatus": "Accepted",
"isValidationOnly": false,
"answers": [
{
"@odata.type": "#microsoft.graph.accessPackageAnswerString",
"value": "Arizona",
"answeredQuestion": {
"id": "A714EC6F-4EE0-4614-BD81-37E0C5ECBBFF",
"isRequired": false,
"text": {
"defaultText": "what state are you from?",
"localizedTexts": [
{
"text": "¿De qué estado eres?",
"languageCode": "es"
}
]
},
"@odata.type": "#microsoft.graph.accessPackageMultipleChoiceQuestion",
"choices": [
{
"actualValue": "AZ",
"displayValue": {
"localizedTexts": [
{
"text": "Arizona",
"languageCode": "es"
}
]
}
},
{
"actualValue": "CA",
"displayValue": {
"localizedTexts": [
{
"text": "California",
"languageCode": "es"
}
]
}
},
{
"actualValue": "OH",
"displayValue": {
"localizedTexts": [
{
"text": "Ohio",
"languageCode": "es"
}
]
}
}
],
"allowsMultipleSelection": false
}
},
{
"@odata.type": "#microsoft.graph.accessPackageAnswerString",
"value": "Need access to marketing campaign material",
"answeredQuestion": {
"id": "AA615EE9-D9D8-4C03-BE91-BEE37106DEDA",
"isRequired": false,
"text": {
"defaultText": "Who is your manager?",
"localizedTexts": [
{
"text": "por qué necesita acceso a este paquete",
"languageCode": "es"
}
]
},
"@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
"isSingleLineQuestion": false
}
}
]
}
示例 3:请求包并提供理由
请求
以下示例演示如何请求访问包并向审批者提供理由。
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests
Content-type: application/json
{
"requestType": "UserAdd",
"accessPackageAssignment": {
"accessPackageId": "a914b616-e04e-476b-aa37-91038f0b165b"
},
"justification":"Need access to New Hire access package"
}
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。所有属性都将通过实际调用返回。
HTTP/1.1 201 Created
Content-type: application/json
{
"id": "813bbc6b-31f5-4cdf-8fed-1ba4284a1e3f",
"requestType": "UserAdd",
"requestState": "Submitted",
"requestStatus": "Accepted",
"isValidationOnly": false,
"expirationDateTime": null,
"justification": "Requested for the new task.",
"answers": [],
"schedule": {
"startDateTime": null,
"recurrence": null,
"expiration": {
"endDateTime": null,
"duration": null,
"type": null
}
}
}
示例 4:删除分配
若要删除分配,请使用以下设置创建新的 accessPackageAssignmentRequest 对象:
requestType 属性设置为AdminRemove的值 。
在 accessPackageAssignment 属性中,包含一个对象,其中包含要删除的 accessPackageAssignment 对象的标识符。
请求
以下示例演示如何删除分配。
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests
Content-type: application/json
{
"requestType": "AdminRemove",
"accessPackageAssignment":{
"id": "a6bb6942-3ae1-4259-9908-0133aaee9377"
}
}
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。所有属性都将通过实际调用返回。
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#accessPackageAssignmentRequests/$entity",
"id": "78eaee8c-e6cf-48c9-8f99-aae44c35e379",
"requestType": "AdminRemove",
"requestState": "Submitted",
"requestStatus": "Accepted"
}
示例 5:管理员为尚未在目录中的用户请求直接分配
请求
下面是针对目录中不存在的用户请求直接分配的示例,管理员请求为用户创建分配。 accessPackageId 的值是该用户所需的访问包,assignmentPolicyId 的值是该访问包中的直接分配策略。
POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests
Content-type: application/json
{
"requestType": "AdminAdd",
"accessPackageAssignment":{
"target": {
"email": "user@contoso.com"
},
"assignmentPolicyId":"2264bf65-76ba-417b-a27d-54d291f0cbc8",
"accessPackageId":"a914b616-e04e-476b-aa37-91038f0b165b"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var accessPackageAssignmentRequest = new AccessPackageAssignmentRequestObject
{
RequestType = "AdminAdd",
AccessPackageAssignment = new AccessPackageAssignment
{
Target = new AccessPackageSubject
{
Email = "user@contoso.com"
},
AssignmentPolicyId = "2264bf65-76ba-417b-a27d-54d291f0cbc8",
AccessPackageId = "a914b616-e04e-476b-aa37-91038f0b165b"
}
};
await graphClient.IdentityGovernance.EntitlementManagement.AccessPackageAssignmentRequests
.Request()
.AddAsync(accessPackageAssignmentRequest);
const options = {
authProvider,
};
const client = Client.init(options);
const accessPackageAssignmentRequest = {
requestType: 'AdminAdd',
accessPackageAssignment: {
target: {
email: 'user@contoso.com'
},
assignmentPolicyId: '2264bf65-76ba-417b-a27d-54d291f0cbc8',
accessPackageId: 'a914b616-e04e-476b-aa37-91038f0b165b'
}
};
await client.api('/identityGovernance/entitlementManagement/accessPackageAssignmentRequests')
.version('beta')
.post(accessPackageAssignmentRequest);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/identityGovernance/entitlementManagement/accessPackageAssignmentRequests"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphAccessPackageAssignmentRequest *accessPackageAssignmentRequest = [[MSGraphAccessPackageAssignmentRequest alloc] init];
[accessPackageAssignmentRequest setRequestType:@"AdminAdd"];
MSGraphAccessPackageAssignment *accessPackageAssignment = [[MSGraphAccessPackageAssignment alloc] init];
MSGraphAccessPackageSubject *target = [[MSGraphAccessPackageSubject alloc] init];
[target setEmail:@"user@contoso.com"];
[accessPackageAssignment setTarget:target];
[accessPackageAssignment setAssignmentPolicyId:@"2264bf65-76ba-417b-a27d-54d291f0cbc8"];
[accessPackageAssignment setAccessPackageId:@"a914b616-e04e-476b-aa37-91038f0b165b"];
[accessPackageAssignmentRequest setAccessPackageAssignment:accessPackageAssignment];
NSError *error;
NSData *accessPackageAssignmentRequestData = [accessPackageAssignmentRequest getSerializedDataWithError:&error];
[urlRequest setHTTPBody:accessPackageAssignmentRequestData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
AccessPackageAssignmentRequest accessPackageAssignmentRequest = new AccessPackageAssignmentRequest();
accessPackageAssignmentRequest.requestType = "AdminAdd";
AccessPackageAssignment accessPackageAssignment = new AccessPackageAssignment();
AccessPackageSubject target = new AccessPackageSubject();
target.email = "user@contoso.com";
accessPackageAssignment.target = target;
accessPackageAssignment.assignmentPolicyId = "2264bf65-76ba-417b-a27d-54d291f0cbc8";
accessPackageAssignment.accessPackageId = "a914b616-e04e-476b-aa37-91038f0b165b";
accessPackageAssignmentRequest.accessPackageAssignment = accessPackageAssignment;
graphClient.identityGovernance().entitlementManagement().accessPackageAssignmentRequests()
.buildRequest()
.post(accessPackageAssignmentRequest);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewAccessPackageAssignmentRequest()
requestType := "AdminAdd"
requestBody.SetRequestType(&requestType)
accessPackageAssignment := msgraphsdk.NewAccessPackageAssignment()
requestBody.SetAccessPackageAssignment(accessPackageAssignment)
target := msgraphsdk.NewAccessPackageSubject()
accessPackageAssignment.SetTarget(target)
email := "user@contoso.com"
target.SetEmail(&email)
assignmentPolicyId := "2264bf65-76ba-417b-a27d-54d291f0cbc8"
accessPackageAssignment.SetAssignmentPolicyId(&assignmentPolicyId)
accessPackageId := "a914b616-e04e-476b-aa37-91038f0b165b"
accessPackageAssignment.SetAccessPackageId(&accessPackageId)
result, err := graphClient.IdentityGovernance().EntitlementManagement().AccessPackageAssignmentRequests().Post(requestBody)
Import-Module Microsoft.Graph.Identity.Governance
$params = @{
RequestType = "AdminAdd"
AccessPackageAssignment = @{
Target = @{
Email = "user@contoso.com"
}
AssignmentPolicyId = "2264bf65-76ba-417b-a27d-54d291f0cbc8"
AccessPackageId = "a914b616-e04e-476b-aa37-91038f0b165b"
}
}
New-MgEntitlementManagementAccessPackageAssignmentRequest -BodyParameter $params
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"id": "7e382d02-4454-436b-b700-59c7dd77f466",
"requestType": "AdminAdd",
"requestState": "Submitted",
"requestStatus": "Accepted",
"isValidationOnly": false
}