创建设置
本文内容
命名空间:microsoft.graph
基于 groupSettingTemplates 中可用的模板创建新设置。 这些设置可以在租户级别或组级别。
组设置仅适用于Microsoft 365组。 命名Group.Unified的模板可用于配置租户范围的Microsoft 365组设置,而命名Group.Unified.Guest的模板可用于配置特定于组的设置。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限 。
权限类型
权限(从最低特权到最高特权)
委派(工作或学校帐户)
Directory.ReadWrite.All
委派(个人 Microsoft 帐户)
不支持。
Application
Directory.ReadWrite.All
HTTP 请求
创建租户范围的设置。
POST /groupSettings
创建特定于组的设置。
POST /groups/{id}/settings
名称
说明
Authorization
Bearer {token}。必需。
Content-Type
application/json
请求正文
在请求正文中,提供 groupSetting 对象的 JSON 表示形式。 显示名称、模板Id 和说明继承自引用的 groupSettingTemplates 对象。 只能从默认值更改值属性。
创建 groupSetting 对象时需要以下属性。
响应
如果成功,此方法将在响应正文中返回 201 Created 响应代码和 groupSetting 对象。
示例 1:为租户中的所有Microsoft 365组创建新设置
请求
只有命名Group.Unified的 groupSettingTemplates 对象才能应用于租户级别的所有Microsoft 365组。
POST https://graph.microsoft.com/v1.0/groupSettings
Content-type: application/json
{
"templateId": "62375ab9-6b52-47ed-826b-58e47e0e304b",
"values": [
{
"name": "GuestUsageGuidelinesUrl",
"value": "https://privacy.contoso.com/privacystatement"
},
{
"name": "EnableMSStandardBlockedWords",
"value": "true"
},
{
"name": "EnableMIPLabels",
"value": "true"
},
{
"name": "PrefixSuffixNamingRequirement",
"value": "[Contoso-][GroupName]"
}
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var groupSetting = new GroupSetting
{
TemplateId = "62375ab9-6b52-47ed-826b-58e47e0e304b",
Values = new List<SettingValue>()
{
new SettingValue
{
Name = "GuestUsageGuidelinesUrl",
Value = "https://privacy.contoso.com/privacystatement"
},
new SettingValue
{
Name = "EnableMSStandardBlockedWords",
Value = "true"
},
new SettingValue
{
Name = "EnableMIPLabels",
Value = "true"
},
new SettingValue
{
Name = "PrefixSuffixNamingRequirement",
Value = "[Contoso-][GroupName]"
}
}
};
await graphClient.GroupSettings
.Request()
.AddAsync(groupSetting);
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var groupSetting = new GroupSetting
{
TemplateId = "62375ab9-6b52-47ed-826b-58e47e0e304b",
Values = new List<SettingValue>()
{
new SettingValue
{
Name = "GuestUsageGuidelinesUrl",
Value = "https://privacy.contoso.com/privacystatement"
},
new SettingValue
{
Name = "EnableMSStandardBlockedWords",
Value = "true"
},
new SettingValue
{
Name = "EnableMIPLabels",
Value = "true"
},
new SettingValue
{
Name = "PrefixSuffixNamingRequirement",
Value = "[Contoso-][GroupName]"
}
}
};
await graphClient.GroupSettings
.Request()
.AddAsync(groupSetting);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
const options = {
authProvider,
};
const client = Client.init(options);
const groupSetting = {
templateId: '62375ab9-6b52-47ed-826b-58e47e0e304b',
values: [
{
name: 'GuestUsageGuidelinesUrl',
value: 'https://privacy.contoso.com/privacystatement'
},
{
name: 'EnableMSStandardBlockedWords',
value: 'true'
},
{
name: 'EnableMIPLabels',
value: 'true'
},
{
name: 'PrefixSuffixNamingRequirement',
value: '[Contoso-][GroupName]'
}
]
};
await client.api('/groupSettings')
.post(groupSetting);
const options = {
authProvider,
};
const client = Client.init(options);
const groupSetting = {
templateId: '62375ab9-6b52-47ed-826b-58e47e0e304b',
values: [
{
name: 'GuestUsageGuidelinesUrl',
value: 'https://privacy.contoso.com/privacystatement'
},
{
name: 'EnableMSStandardBlockedWords',
value: 'true'
},
{
name: 'EnableMIPLabels',
value: 'true'
},
{
name: 'PrefixSuffixNamingRequirement',
value: '[Contoso-][GroupName]'
}
]
};
await client.api('/groupSettings')
.post(groupSetting);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groupSettings"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphGroupSetting *groupSetting = [[MSGraphGroupSetting alloc] init];
[groupSetting setTemplateId:@"62375ab9-6b52-47ed-826b-58e47e0e304b"];
NSMutableArray *valuesList = [[NSMutableArray alloc] init];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"GuestUsageGuidelinesUrl"];
[values setValue:@"https://privacy.contoso.com/privacystatement"];
[valuesList addObject: values];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"EnableMSStandardBlockedWords"];
[values setValue:@"true"];
[valuesList addObject: values];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"EnableMIPLabels"];
[values setValue:@"true"];
[valuesList addObject: values];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"PrefixSuffixNamingRequirement"];
[values setValue:@"[Contoso-][GroupName]"];
[valuesList addObject: values];
[groupSetting setValues:valuesList];
NSError *error;
NSData *groupSettingData = [groupSetting getSerializedDataWithError:&error];
[urlRequest setHTTPBody:groupSettingData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groupSettings"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphGroupSetting *groupSetting = [[MSGraphGroupSetting alloc] init];
[groupSetting setTemplateId:@"62375ab9-6b52-47ed-826b-58e47e0e304b"];
NSMutableArray *valuesList = [[NSMutableArray alloc] init];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"GuestUsageGuidelinesUrl"];
[values setValue:@"https://privacy.contoso.com/privacystatement"];
[valuesList addObject: values];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"EnableMSStandardBlockedWords"];
[values setValue:@"true"];
[valuesList addObject: values];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"EnableMIPLabels"];
[values setValue:@"true"];
[valuesList addObject: values];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"PrefixSuffixNamingRequirement"];
[values setValue:@"[Contoso-][GroupName]"];
[valuesList addObject: values];
[groupSetting setValues:valuesList];
NSError *error;
NSData *groupSettingData = [groupSetting getSerializedDataWithError:&error];
[urlRequest setHTTPBody:groupSettingData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
GroupSetting groupSetting = new GroupSetting();
groupSetting.templateId = "62375ab9-6b52-47ed-826b-58e47e0e304b";
LinkedList<SettingValue> valuesList = new LinkedList<SettingValue>();
SettingValue values = new SettingValue();
values.name = "GuestUsageGuidelinesUrl";
values.value = "https://privacy.contoso.com/privacystatement";
valuesList.add(values);
SettingValue values1 = new SettingValue();
values1.name = "EnableMSStandardBlockedWords";
values1.value = "true";
valuesList.add(values1);
SettingValue values2 = new SettingValue();
values2.name = "EnableMIPLabels";
values2.value = "true";
valuesList.add(values2);
SettingValue values3 = new SettingValue();
values3.name = "PrefixSuffixNamingRequirement";
values3.value = "[Contoso-][GroupName]";
valuesList.add(values3);
groupSetting.values = valuesList;
graphClient.groupSettings()
.buildRequest()
.post(groupSetting);
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
GroupSetting groupSetting = new GroupSetting();
groupSetting.templateId = "62375ab9-6b52-47ed-826b-58e47e0e304b";
LinkedList<SettingValue> valuesList = new LinkedList<SettingValue>();
SettingValue values = new SettingValue();
values.name = "GuestUsageGuidelinesUrl";
values.value = "https://privacy.contoso.com/privacystatement";
valuesList.add(values);
SettingValue values1 = new SettingValue();
values1.name = "EnableMSStandardBlockedWords";
values1.value = "true";
valuesList.add(values1);
SettingValue values2 = new SettingValue();
values2.name = "EnableMIPLabels";
values2.value = "true";
valuesList.add(values2);
SettingValue values3 = new SettingValue();
values3.name = "PrefixSuffixNamingRequirement";
values3.value = "[Contoso-][GroupName]";
valuesList.add(values3);
groupSetting.values = valuesList;
graphClient.groupSettings()
.buildRequest()
.post(groupSetting);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewGroupSetting()
templateId := "62375ab9-6b52-47ed-826b-58e47e0e304b"
requestBody.SetTemplateId(&templateId)
requestBody.SetValues( []SettingValue {
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "GuestUsageGuidelinesUrl",
"value": "https://privacy.contoso.com/privacystatement",
}
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "EnableMSStandardBlockedWords",
"value": "true",
}
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "EnableMIPLabels",
"value": "true",
}
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "PrefixSuffixNamingRequirement",
"value": "[Contoso-][GroupName]",
}
}
result, err := graphClient.GroupSettings().Post(requestBody)
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewGroupSetting()
templateId := "62375ab9-6b52-47ed-826b-58e47e0e304b"
requestBody.SetTemplateId(&templateId)
requestBody.SetValues( []SettingValue {
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "GuestUsageGuidelinesUrl",
"value": "https://privacy.contoso.com/privacystatement",
}
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "EnableMSStandardBlockedWords",
"value": "true",
}
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "EnableMIPLabels",
"value": "true",
}
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "PrefixSuffixNamingRequirement",
"value": "[Contoso-][GroupName]",
}
}
result, err := graphClient.GroupSettings().Post(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
响应
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groupSettings/$entity",
"id": "844d252c-4de2-43eb-a784-96df77231aae",
"displayName": null,
"templateId": "62375ab9-6b52-47ed-826b-58e47e0e304b",
"values": [
{
"name": "GuestUsageGuidelinesUrl",
"value": "https://privacy.contoso.com/privacystatement"
},
{
"name": "EnableMSStandardBlockedWords",
"value": "true"
},
{
"name": "EnableMIPLabels",
"value": "true"
},
{
"name": "PrefixSuffixNamingRequirement",
"value": "[Contoso-][GroupName]"
}
]
}
displayName 属性和其他名称值对将填充与 templateId 匹配的 groupSettingTemplates 对象中的默认值。
示例 2:创建用于阻止特定Microsoft 365组的来宾的设置
请求
只有命名Group.Unified.Guest的 groupSettingTemplates 对象才能应用于特定Microsoft 365组。
POST https://graph.microsoft.com/v1.0/groups/055a5d18-a3a9-4338-b9c5-de92559b7ebf/settings
Content-type: application/json
{
"templateId": "08d542b9-071f-4e16-94b0-74abb372e3d9",
"values": [
{
"name": "AllowToAddGuests",
"value": "false"
}
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var groupSetting = new GroupSetting
{
TemplateId = "08d542b9-071f-4e16-94b0-74abb372e3d9",
Values = new List<SettingValue>()
{
new SettingValue
{
Name = "AllowToAddGuests",
Value = "false"
}
}
};
await graphClient.Groups["{group-id}"].Settings
.Request()
.AddAsync(groupSetting);
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var groupSetting = new GroupSetting
{
TemplateId = "08d542b9-071f-4e16-94b0-74abb372e3d9",
Values = new List<SettingValue>()
{
new SettingValue
{
Name = "AllowToAddGuests",
Value = "false"
}
}
};
await graphClient.Groups["{group-id}"].Settings
.Request()
.AddAsync(groupSetting);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
const options = {
authProvider,
};
const client = Client.init(options);
const groupSetting = {
templateId: '08d542b9-071f-4e16-94b0-74abb372e3d9',
values: [
{
name: 'AllowToAddGuests',
value: 'false'
}
]
};
await client.api('/groups/055a5d18-a3a9-4338-b9c5-de92559b7ebf/settings')
.post(groupSetting);
const options = {
authProvider,
};
const client = Client.init(options);
const groupSetting = {
templateId: '08d542b9-071f-4e16-94b0-74abb372e3d9',
values: [
{
name: 'AllowToAddGuests',
value: 'false'
}
]
};
await client.api('/groups/055a5d18-a3a9-4338-b9c5-de92559b7ebf/settings')
.post(groupSetting);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groups/055a5d18-a3a9-4338-b9c5-de92559b7ebf/settings"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphGroupSetting *groupSetting = [[MSGraphGroupSetting alloc] init];
[groupSetting setTemplateId:@"08d542b9-071f-4e16-94b0-74abb372e3d9"];
NSMutableArray *valuesList = [[NSMutableArray alloc] init];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"AllowToAddGuests"];
[values setValue:@"false"];
[valuesList addObject: values];
[groupSetting setValues:valuesList];
NSError *error;
NSData *groupSettingData = [groupSetting getSerializedDataWithError:&error];
[urlRequest setHTTPBody:groupSettingData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groups/055a5d18-a3a9-4338-b9c5-de92559b7ebf/settings"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphGroupSetting *groupSetting = [[MSGraphGroupSetting alloc] init];
[groupSetting setTemplateId:@"08d542b9-071f-4e16-94b0-74abb372e3d9"];
NSMutableArray *valuesList = [[NSMutableArray alloc] init];
MSGraphSettingValue *values = [[MSGraphSettingValue alloc] init];
[values setName:@"AllowToAddGuests"];
[values setValue:@"false"];
[valuesList addObject: values];
[groupSetting setValues:valuesList];
NSError *error;
NSData *groupSettingData = [groupSetting getSerializedDataWithError:&error];
[urlRequest setHTTPBody:groupSettingData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
GroupSetting groupSetting = new GroupSetting();
groupSetting.templateId = "08d542b9-071f-4e16-94b0-74abb372e3d9";
LinkedList<SettingValue> valuesList = new LinkedList<SettingValue>();
SettingValue values = new SettingValue();
values.name = "AllowToAddGuests";
values.value = "false";
valuesList.add(values);
groupSetting.values = valuesList;
graphClient.groups("055a5d18-a3a9-4338-b9c5-de92559b7ebf").settings()
.buildRequest()
.post(groupSetting);
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
GroupSetting groupSetting = new GroupSetting();
groupSetting.templateId = "08d542b9-071f-4e16-94b0-74abb372e3d9";
LinkedList<SettingValue> valuesList = new LinkedList<SettingValue>();
SettingValue values = new SettingValue();
values.name = "AllowToAddGuests";
values.value = "false";
valuesList.add(values);
groupSetting.values = valuesList;
graphClient.groups("055a5d18-a3a9-4338-b9c5-de92559b7ebf").settings()
.buildRequest()
.post(groupSetting);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewGroupSetting()
templateId := "08d542b9-071f-4e16-94b0-74abb372e3d9"
requestBody.SetTemplateId(&templateId)
requestBody.SetValues( []SettingValue {
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "AllowToAddGuests",
"value": "false",
}
}
groupId := "group-id"
result, err := graphClient.GroupsById(&groupId).Settings().Post(requestBody)
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewGroupSetting()
templateId := "08d542b9-071f-4e16-94b0-74abb372e3d9"
requestBody.SetTemplateId(&templateId)
requestBody.SetValues( []SettingValue {
msgraphsdk.NewSettingValue(),
SetAdditionalData(map[string]interface{}{
"name": "AllowToAddGuests",
"value": "false",
}
}
groupId := "group-id"
result, err := graphClient.GroupsById(&groupId).Settings().Post(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
在请求正文中,提供 groupSetting 对象的 JSON 表示形式。
响应
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groupSettings/$entity",
"id": "a06fa228-3042-4662-bd09-33e298da1afe",
"displayName": null,
"templateId": "08d542b9-071f-4e16-94b0-74abb372e3d9",
"values": [
{
"name": "AllowToAddGuests",
"value": "false"
}
]
}