unifiedRoleManagementPolicyRule を更新する
[アーティクル]
06/05/2022
3 人の共同作成者
この記事の内容
名前空間: microsoft.graph
ロール管理ポリシーに定義されているルールを更新します。 ルールには、 unifiedRoleManagementPolicyRule オブジェクトから派生した次のいずれかの型を指定できます。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可 」を参照してください。
アクセス許可の種類
アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント)
RoleManagementPolicy.ReadWrite.Directory, RoleManagement.ReadWrite.Directory
委任 (個人用 Microsoft アカウント)
サポートされていません。
アプリケーション
サポートされていません。
HTTP 要求
PATCH /policies/roleManagementPolicies/{unifiedRoleManagementPolicyId}/rules/{unifiedRoleManagementPolicyRuleId}
名前
説明
Authorization
ベアラー {トークン}。必須。
Content-Type
application/json. Required.
要求本文
要求本文では、更新する必要があるプロパティの値 のみ を指定します。要求本文に含まれていない既存のプロパティは、以前の値を保持するか、他のプロパティ値の変更に基づいて再計算されます。
次の表に、更新できるプロパティを示します。
プロパティ
型
説明
claimValue
String
認証コンテキスト要求の値。 unifiedRoleManagementPolicyAuthenticationContextRule ルールの種類に対して更新できます。
enabledRules
String collection
このポリシー 規則に対して有効になっているルールのコレクション。 たとえば、、 MultiFactorAuthentication``Ticketing.JustificationunifiedRoleManagementPolicyEnablementRule ルールの種類に対して更新できます。
isDefaultRecipientsEnabled
ブール型
既定の受信者が通知メールを受信するかどうかを示します。unifiedRoleManagementPolicyNotificationRule ルールの種類に対して更新できます。
isEnabled
ブール値
このルールが有効になっているかどうか。 unifiedRoleManagementPolicyAuthenticationContextRule ルールの種類に対して更新できます。
isExpirationRequired
ブール値
有効期限が必要か、永続的にアクティブな割り当てか適格性かを示します。 unifiedRoleManagementPolicyExpirationRule ルールの種類に対して更新できます。
maximumDuration
期間
永続的でない適格性または割り当てに許可される最大期間。 isExpirationRequired が true. unifiedRoleManagementPolicyExpirationRule ルールの種類に対して更新できます。
notificationLevel
String
通知のレベル。 指定できる値は None、 、 Critical. AllunifiedRoleManagementPolicyNotificationRule ルールの種類に対して更新できます。
notificationRecipients
String collection
電子メール通知の受信者の一覧。unifiedRoleManagementPolicyNotificationRule ルールの種類に対して更新できます。
notificationType
String
通知の種類。 のみ Email サポートされています。unifiedRoleManagementPolicyNotificationRule ルールの種類に対して更新できます。
recipientType
String
通知の受信者の種類。 指定できる値は Requestor、 、 Approver. AdminunifiedRoleManagementPolicyNotificationRule ルールの種類に対して更新できます。
setting
approvalSettings
ロールの割り当ての承認の設定。 unifiedRoleManagementPolicyApprovalRule ルールの種類に対して更新できます。
target
unifiedRoleManagementPolicyRuleTarget
ロール管理ポリシー ルールの対象となるスコープの詳細を定義します。 詳細には、プリンシパルの種類、ロールの割り当ての種類、ロールに影響を与えるアクションを含めることができます。 すべてのルールの種類に対して更新できます。
メモ: 特定の規則の種類の値を持つプロパティは @odata.type 、本文に含まれている必要があります。 たとえば、「 "@odata.type": "#microsoft.graph.unifiedRoleManagementPolicyApprovalRule" 」のように入力します。
応答
成功した場合、このメソッドは 204 No Content 応答コードを返します。
例
要求
次の例では、ID Expiration_EndUser_Assignmentを使用してロール管理ポリシールールを更新します。
PATCH https://graph.microsoft.com/beta/policies/roleManagementPolicies/DirectoryRole_84841066-274d-4ec0-a5c1-276be684bdd3_200ec19a-09e7-4e7a-9515-cf1ee64b96f9/rules/Expiration_EndUser_Assignment
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.unifiedRoleManagementPolicyExpirationRule",
"id": "Expiration_EndUser_Assignment",
"isExpirationRequired": true,
"maximumDuration": "PT1H45M",
"target": {
"@odata.type": "microsoft.graph.unifiedRoleManagementPolicyRuleTarget",
"caller": "EndUser",
"operations": [
"All"
],
"level": "Assignment",
"inheritableSettings": [],
"enforcedSettings": []
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var unifiedRoleManagementPolicyRule = new UnifiedRoleManagementPolicyExpirationRule
{
Id = "Expiration_EndUser_Assignment",
IsExpirationRequired = true,
MaximumDuration = new Duration("PT1H45M"),
Target = new UnifiedRoleManagementPolicyRuleTarget
{
Caller = "EndUser",
Operations = new List<String>()
{
"All"
},
Level = "Assignment",
InheritableSettings = new List<String>()
{
},
EnforcedSettings = new List<String>()
{
}
}
};
await graphClient.Policies.RoleManagementPolicies["{unifiedRoleManagementPolicy-id}"].Rules["{unifiedRoleManagementPolicyRule-id}"]
.Request()
.UpdateAsync(unifiedRoleManagementPolicyRule);
const options = {
authProvider,
};
const client = Client.init(options);
const unifiedRoleManagementPolicyRule = {
'@odata.type': '#microsoft.graph.unifiedRoleManagementPolicyExpirationRule',
id: 'Expiration_EndUser_Assignment',
isExpirationRequired: true,
maximumDuration: 'PT1H45M',
target: {
'@odata.type': 'microsoft.graph.unifiedRoleManagementPolicyRuleTarget',
caller: 'EndUser',
operations: [
'All'
],
level: 'Assignment',
inheritableSettings: [],
enforcedSettings: []
}
};
await client.api('/policies/roleManagementPolicies/DirectoryRole_84841066-274d-4ec0-a5c1-276be684bdd3_200ec19a-09e7-4e7a-9515-cf1ee64b96f9/rules/Expiration_EndUser_Assignment')
.version('beta')
.update(unifiedRoleManagementPolicyRule);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/policies/roleManagementPolicies/DirectoryRole_84841066-274d-4ec0-a5c1-276be684bdd3_200ec19a-09e7-4e7a-9515-cf1ee64b96f9/rules/Expiration_EndUser_Assignment"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphUnifiedRoleManagementPolicyRule *unifiedRoleManagementPolicyRule = [[MSGraphUnifiedRoleManagementPolicyRule alloc] init];
[unifiedRoleManagementPolicyRule setId:@"Expiration_EndUser_Assignment"];
[unifiedRoleManagementPolicyRule setIsExpirationRequired: true];
[unifiedRoleManagementPolicyRule setMaximumDuration:@"PT1H45M"];
MSGraphUnifiedRoleManagementPolicyRuleTarget *target = [[MSGraphUnifiedRoleManagementPolicyRuleTarget alloc] init];
[target setCaller:@"EndUser"];
NSMutableArray *operationsList = [[NSMutableArray alloc] init];
[operationsList addObject: @"All"];
[target setOperations:operationsList];
[target setLevel:@"Assignment"];
NSMutableArray *inheritableSettingsList = [[NSMutableArray alloc] init];
[target setInheritableSettings:inheritableSettingsList];
NSMutableArray *enforcedSettingsList = [[NSMutableArray alloc] init];
[target setEnforcedSettings:enforcedSettingsList];
[unifiedRoleManagementPolicyRule setTarget:target];
NSError *error;
NSData *unifiedRoleManagementPolicyRuleData = [unifiedRoleManagementPolicyRule getSerializedDataWithError:&error];
[urlRequest setHTTPBody:unifiedRoleManagementPolicyRuleData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
UnifiedRoleManagementPolicyExpirationRule unifiedRoleManagementPolicyRule = new UnifiedRoleManagementPolicyExpirationRule();
unifiedRoleManagementPolicyRule.id = "Expiration_EndUser_Assignment";
unifiedRoleManagementPolicyRule.isExpirationRequired = true;
unifiedRoleManagementPolicyRule.maximumDuration = DatatypeFactory.newInstance().newDuration("PT1H45M");
UnifiedRoleManagementPolicyRuleTarget target = new UnifiedRoleManagementPolicyRuleTarget();
target.caller = "EndUser";
LinkedList<String> operationsList = new LinkedList<String>();
operationsList.add("All");
target.operations = operationsList;
target.level = "Assignment";
LinkedList<String> inheritableSettingsList = new LinkedList<String>();
target.inheritableSettings = inheritableSettingsList;
LinkedList<String> enforcedSettingsList = new LinkedList<String>();
target.enforcedSettings = enforcedSettingsList;
unifiedRoleManagementPolicyRule.target = target;
graphClient.policies().roleManagementPolicies("DirectoryRole_84841066-274d-4ec0-a5c1-276be684bdd3_200ec19a-09e7-4e7a-9515-cf1ee64b96f9").rules("Expiration_EndUser_Assignment")
.buildRequest()
.patch(unifiedRoleManagementPolicyRule);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewUnifiedRoleManagementPolicyRule()
id := "Expiration_EndUser_Assignment"
requestBody.SetId(&id)
target := msgraphsdk.NewUnifiedRoleManagementPolicyRuleTarget()
requestBody.SetTarget(target)
caller := "EndUser"
target.SetCaller(&caller)
target.SetOperations( []String {
"All",
}
level := "Assignment"
target.SetLevel(&level)
target.SetInheritableSettings( []string {
}
target.SetEnforcedSettings( []string {
}
target.SetAdditionalData(map[string]interface{}{
"@odata.type": "microsoft.graph.unifiedRoleManagementPolicyRuleTarget",
}
requestBody.SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.unifiedRoleManagementPolicyExpirationRule",
"isExpirationRequired": true,
"maximumDuration": "PT1H45M",
}
unifiedRoleManagementPolicyId := "unifiedRoleManagementPolicy-id"
unifiedRoleManagementPolicyRuleId := "unifiedRoleManagementPolicyRule-id"
graphClient.Policies().RoleManagementPoliciesById(&unifiedRoleManagementPolicyId).RulesById(&unifiedRoleManagementPolicyRuleId).Patch(requestBody)
Import-Module Microsoft.Graph.Identity.SignIns
$params = @{
"@odata.type" = "#microsoft.graph.unifiedRoleManagementPolicyExpirationRule"
Id = "Expiration_EndUser_Assignment"
IsExpirationRequired = $true
MaximumDuration = "PT1H45M"
Target = @{
"@odata.type" = "microsoft.graph.unifiedRoleManagementPolicyRuleTarget"
Caller = "EndUser"
Operations = @(
"All"
)
Level = "Assignment"
InheritableSettings = @(
)
EnforcedSettings = @(
)
}
}
Update-MgPolicyRoleManagementPolicyRule -UnifiedRoleManagementPolicyId $unifiedRoleManagementPolicyId -UnifiedRoleManagementPolicyRuleId $unifiedRoleManagementPolicyRuleId -BodyParameter $params
応答
HTTP/1.1 204 No Content