Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Ниже показан пример запроса.
POST https://graph.microsoft.com/beta/admin/configurationManagement/configurationMonitors
Content-Type: application/json
{
"displayName": "Demo Monitor",
"description": "This is a Demo Monitor",
"baseline": {
"displayName": "Demo Baseline",
"description": "This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact",
"resources": [
{
"displayName": "TestSharedMailbox Resource",
"resourceType": "microsoft.exchange.sharedmailbox",
"properties": {
"DisplayName": "TestSharedMailbox",
"Alias": "testSharedMailbox",
"Identity": "TestSharedMailbox",
"Ensure": "Present",
"PrimarySmtpAddress": "testSharedMailbox@contoso.onmicrosoft.com",
"EmailAddresses": [
"abc@contoso.onmicrosoft.com"
]
}
},
{
"displayName": "Accepted Domain",
"resourceType": "microsoft.exchange.accepteddomain",
"properties": {
"Identity": "contoso.onmicrosoft.com",
"DomainType": "InternalRelay",
"Ensure": "Present"
}
},
{
"displayName": "Mail Contact Resource",
"resourceType": "microsoft.exchange.mailcontact",
"properties": {
"Name": "Chris",
"DisplayName": "Chris",
"ExternalEmailAddress": "SMTP:chris@fabrikam.com",
"Alias": "Chrisa",
"Ensure": "Present"
}
}
]
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new ConfigurationMonitor
{
DisplayName = "Demo Monitor",
Description = "This is a Demo Monitor",
Baseline = new ConfigurationBaseline
{
DisplayName = "Demo Baseline",
Description = "This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact",
Resources = new List<BaselineResource>
{
new BaselineResource
{
DisplayName = "TestSharedMailbox Resource",
ResourceType = "microsoft.exchange.sharedmailbox",
Properties = new OpenComplexDictionaryType
{
AdditionalData = new Dictionary<string, object>
{
{
"DisplayName" , "TestSharedMailbox"
},
{
"Alias" , "testSharedMailbox"
},
{
"Identity" , "TestSharedMailbox"
},
{
"Ensure" , "Present"
},
{
"PrimarySmtpAddress" , "testSharedMailbox@contoso.onmicrosoft.com"
},
{
"EmailAddresses" , new List<string>
{
"abc@contoso.onmicrosoft.com",
}
},
},
},
},
new BaselineResource
{
DisplayName = "Accepted Domain",
ResourceType = "microsoft.exchange.accepteddomain",
Properties = new OpenComplexDictionaryType
{
AdditionalData = new Dictionary<string, object>
{
{
"Identity" , "contoso.onmicrosoft.com"
},
{
"DomainType" , "InternalRelay"
},
{
"Ensure" , "Present"
},
},
},
},
new BaselineResource
{
DisplayName = "Mail Contact Resource",
ResourceType = "microsoft.exchange.mailcontact",
Properties = new OpenComplexDictionaryType
{
AdditionalData = new Dictionary<string, object>
{
{
"Name" , "Chris"
},
{
"DisplayName" , "Chris"
},
{
"ExternalEmailAddress" , "SMTP:chris@fabrikam.com"
},
{
"Alias" , "Chrisa"
},
{
"Ensure" , "Present"
},
},
},
},
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Admin.ConfigurationManagement.ConfigurationMonitors.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewConfigurationMonitor()
displayName := "Demo Monitor"
requestBody.SetDisplayName(&displayName)
description := "This is a Demo Monitor"
requestBody.SetDescription(&description)
baseline := graphmodels.NewConfigurationBaseline()
displayName := "Demo Baseline"
baseline.SetDisplayName(&displayName)
description := "This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact"
baseline.SetDescription(&description)
baselineResource := graphmodels.NewBaselineResource()
displayName := "TestSharedMailbox Resource"
baselineResource.SetDisplayName(&displayName)
resourceType := "microsoft.exchange.sharedmailbox"
baselineResource.SetResourceType(&resourceType)
properties := graphmodels.NewOpenComplexDictionaryType()
additionalData := map[string]interface{}{
"DisplayName" : "TestSharedMailbox",
"Alias" : "testSharedMailbox",
"Identity" : "TestSharedMailbox",
"Ensure" : "Present",
"PrimarySmtpAddress" : "testSharedMailbox@contoso.onmicrosoft.com",
emailAddresses := []string {
"abc@contoso.onmicrosoft.com",
}
}
properties.SetAdditionalData(additionalData)
baselineResource.SetProperties(properties)
baselineResource1 := graphmodels.NewBaselineResource()
displayName := "Accepted Domain"
baselineResource1.SetDisplayName(&displayName)
resourceType := "microsoft.exchange.accepteddomain"
baselineResource1.SetResourceType(&resourceType)
properties := graphmodels.NewOpenComplexDictionaryType()
additionalData := map[string]interface{}{
"Identity" : "contoso.onmicrosoft.com",
"DomainType" : "InternalRelay",
"Ensure" : "Present",
}
properties.SetAdditionalData(additionalData)
baselineResource1.SetProperties(properties)
baselineResource2 := graphmodels.NewBaselineResource()
displayName := "Mail Contact Resource"
baselineResource2.SetDisplayName(&displayName)
resourceType := "microsoft.exchange.mailcontact"
baselineResource2.SetResourceType(&resourceType)
properties := graphmodels.NewOpenComplexDictionaryType()
additionalData := map[string]interface{}{
"Name" : "Chris",
"DisplayName" : "Chris",
"ExternalEmailAddress" : "SMTP:chris@fabrikam.com",
"Alias" : "Chrisa",
"Ensure" : "Present",
}
properties.SetAdditionalData(additionalData)
baselineResource2.SetProperties(properties)
resources := []graphmodels.BaselineResourceable {
baselineResource,
baselineResource1,
baselineResource2,
}
baseline.SetResources(resources)
requestBody.SetBaseline(baseline)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
configurationMonitors, err := graphClient.Admin().ConfigurationManagement().ConfigurationMonitors().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
ConfigurationMonitor configurationMonitor = new ConfigurationMonitor();
configurationMonitor.setDisplayName("Demo Monitor");
configurationMonitor.setDescription("This is a Demo Monitor");
ConfigurationBaseline baseline = new ConfigurationBaseline();
baseline.setDisplayName("Demo Baseline");
baseline.setDescription("This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact");
LinkedList<BaselineResource> resources = new LinkedList<BaselineResource>();
BaselineResource baselineResource = new BaselineResource();
baselineResource.setDisplayName("TestSharedMailbox Resource");
baselineResource.setResourceType("microsoft.exchange.sharedmailbox");
OpenComplexDictionaryType properties = new OpenComplexDictionaryType();
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("DisplayName", "TestSharedMailbox");
additionalData.put("Alias", "testSharedMailbox");
additionalData.put("Identity", "TestSharedMailbox");
additionalData.put("Ensure", "Present");
additionalData.put("PrimarySmtpAddress", "testSharedMailbox@contoso.onmicrosoft.com");
LinkedList<String> emailAddresses = new LinkedList<String>();
emailAddresses.add("abc@contoso.onmicrosoft.com");
additionalData.put("EmailAddresses", emailAddresses);
properties.setAdditionalData(additionalData);
baselineResource.setProperties(properties);
resources.add(baselineResource);
BaselineResource baselineResource1 = new BaselineResource();
baselineResource1.setDisplayName("Accepted Domain");
baselineResource1.setResourceType("microsoft.exchange.accepteddomain");
OpenComplexDictionaryType properties1 = new OpenComplexDictionaryType();
HashMap<String, Object> additionalData1 = new HashMap<String, Object>();
additionalData1.put("Identity", "contoso.onmicrosoft.com");
additionalData1.put("DomainType", "InternalRelay");
additionalData1.put("Ensure", "Present");
properties1.setAdditionalData(additionalData1);
baselineResource1.setProperties(properties1);
resources.add(baselineResource1);
BaselineResource baselineResource2 = new BaselineResource();
baselineResource2.setDisplayName("Mail Contact Resource");
baselineResource2.setResourceType("microsoft.exchange.mailcontact");
OpenComplexDictionaryType properties2 = new OpenComplexDictionaryType();
HashMap<String, Object> additionalData2 = new HashMap<String, Object>();
additionalData2.put("Name", "Chris");
additionalData2.put("DisplayName", "Chris");
additionalData2.put("ExternalEmailAddress", "SMTP:chris@fabrikam.com");
additionalData2.put("Alias", "Chrisa");
additionalData2.put("Ensure", "Present");
properties2.setAdditionalData(additionalData2);
baselineResource2.setProperties(properties2);
resources.add(baselineResource2);
baseline.setResources(resources);
configurationMonitor.setBaseline(baseline);
ConfigurationMonitor result = graphClient.admin().configurationManagement().configurationMonitors().post(configurationMonitor);
const options = {
authProvider,
};
const client = Client.init(options);
const configurationMonitor = {
displayName: 'Demo Monitor',
description: 'This is a Demo Monitor',
baseline: {
displayName: 'Demo Baseline',
description: 'This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact',
resources: [
{
displayName: 'TestSharedMailbox Resource',
resourceType: 'microsoft.exchange.sharedmailbox',
properties: {
DisplayName: 'TestSharedMailbox',
Alias: 'testSharedMailbox',
Identity: 'TestSharedMailbox',
Ensure: 'Present',
PrimarySmtpAddress: 'testSharedMailbox@contoso.onmicrosoft.com',
EmailAddresses: [
'abc@contoso.onmicrosoft.com'
]
}
},
{
displayName: 'Accepted Domain',
resourceType: 'microsoft.exchange.accepteddomain',
properties: {
Identity: 'contoso.onmicrosoft.com',
DomainType: 'InternalRelay',
Ensure: 'Present'
}
},
{
displayName: 'Mail Contact Resource',
resourceType: 'microsoft.exchange.mailcontact',
properties: {
Name: 'Chris',
DisplayName: 'Chris',
ExternalEmailAddress: 'SMTP:chris@fabrikam.com',
Alias: 'Chrisa',
Ensure: 'Present'
}
}
]
}
};
await client.api('/admin/configurationManagement/configurationMonitors')
.version('beta')
.post(configurationMonitor);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\ConfigurationMonitor;
use Microsoft\Graph\Beta\Generated\Models\ConfigurationBaseline;
use Microsoft\Graph\Beta\Generated\Models\BaselineResource;
use Microsoft\Graph\Beta\Generated\Models\OpenComplexDictionaryType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ConfigurationMonitor();
$requestBody->setDisplayName('Demo Monitor');
$requestBody->setDescription('This is a Demo Monitor');
$baseline = new ConfigurationBaseline();
$baseline->setDisplayName('Demo Baseline');
$baseline->setDescription('This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact');
$resourcesBaselineResource1 = new BaselineResource();
$resourcesBaselineResource1->setDisplayName('TestSharedMailbox Resource');
$resourcesBaselineResource1->setResourceType('microsoft.exchange.sharedmailbox');
$resourcesBaselineResource1Properties = new OpenComplexDictionaryType();
$additionalData = [
'DisplayName' => 'TestSharedMailbox',
'Alias' => 'testSharedMailbox',
'Identity' => 'TestSharedMailbox',
'Ensure' => 'Present',
'PrimarySmtpAddress' => 'testSharedMailbox@contoso.onmicrosoft.com',
'EmailAddresses' => [
'abc@contoso.onmicrosoft.com', ],
];
$resourcesBaselineResource1Properties->setAdditionalData($additionalData);
$resourcesBaselineResource1->setProperties($resourcesBaselineResource1Properties);
$resourcesArray []= $resourcesBaselineResource1;
$resourcesBaselineResource2 = new BaselineResource();
$resourcesBaselineResource2->setDisplayName('Accepted Domain');
$resourcesBaselineResource2->setResourceType('microsoft.exchange.accepteddomain');
$resourcesBaselineResource2Properties = new OpenComplexDictionaryType();
$additionalData = [
'Identity' => 'contoso.onmicrosoft.com',
'DomainType' => 'InternalRelay',
'Ensure' => 'Present',
];
$resourcesBaselineResource2Properties->setAdditionalData($additionalData);
$resourcesBaselineResource2->setProperties($resourcesBaselineResource2Properties);
$resourcesArray []= $resourcesBaselineResource2;
$resourcesBaselineResource3 = new BaselineResource();
$resourcesBaselineResource3->setDisplayName('Mail Contact Resource');
$resourcesBaselineResource3->setResourceType('microsoft.exchange.mailcontact');
$resourcesBaselineResource3Properties = new OpenComplexDictionaryType();
$additionalData = [
'Name' => 'Chris',
'DisplayName' => 'Chris',
'ExternalEmailAddress' => 'SMTP:chris@fabrikam.com',
'Alias' => 'Chrisa',
'Ensure' => 'Present',
];
$resourcesBaselineResource3Properties->setAdditionalData($additionalData);
$resourcesBaselineResource3->setProperties($resourcesBaselineResource3Properties);
$resourcesArray []= $resourcesBaselineResource3;
$baseline->setResources($resourcesArray);
$requestBody->setBaseline($baseline);
$result = $graphServiceClient->admin()->configurationManagement()->configurationMonitors()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.ConfigurationManagement
$params = @{
displayName = "Demo Monitor"
description = "This is a Demo Monitor"
baseline = @{
displayName = "Demo Baseline"
description = "This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact"
resources = @(
@{
displayName = "TestSharedMailbox Resource"
resourceType = "microsoft.exchange.sharedmailbox"
properties = @{
DisplayName = "TestSharedMailbox"
Alias = "testSharedMailbox"
Identity = "TestSharedMailbox"
Ensure = "Present"
PrimarySmtpAddress = "testSharedMailbox@contoso.onmicrosoft.com"
EmailAddresses = @(
"abc@contoso.onmicrosoft.com"
)
}
}
@{
displayName = "Accepted Domain"
resourceType = "microsoft.exchange.accepteddomain"
properties = @{
Identity = "contoso.onmicrosoft.com"
DomainType = "InternalRelay"
Ensure = "Present"
}
}
@{
displayName = "Mail Contact Resource"
resourceType = "microsoft.exchange.mailcontact"
properties = @{
Name = "Chris"
DisplayName = "Chris"
ExternalEmailAddress = "SMTP:chris@fabrikam.com"
Alias = "Chrisa"
Ensure = "Present"
}
}
)
}
}
New-MgBetaAdminConfigurationManagementConfigurationMonitor -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.configuration_monitor import ConfigurationMonitor
from msgraph_beta.generated.models.configuration_baseline import ConfigurationBaseline
from msgraph_beta.generated.models.baseline_resource import BaselineResource
from msgraph_beta.generated.models.open_complex_dictionary_type import OpenComplexDictionaryType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ConfigurationMonitor(
display_name = "Demo Monitor",
description = "This is a Demo Monitor",
baseline = ConfigurationBaseline(
display_name = "Demo Baseline",
description = "This is a baseline with resources SharedMailbox, AcceptedDomain and MailContact",
resources = [
BaselineResource(
display_name = "TestSharedMailbox Resource",
resource_type = "microsoft.exchange.sharedmailbox",
properties = OpenComplexDictionaryType(
additional_data = {
"display_name" : "TestSharedMailbox",
"alias" : "testSharedMailbox",
"identity" : "TestSharedMailbox",
"ensure" : "Present",
"primary_smtp_address" : "testSharedMailbox@contoso.onmicrosoft.com",
"email_addresses" : [
"abc@contoso.onmicrosoft.com",
],
}
),
),
BaselineResource(
display_name = "Accepted Domain",
resource_type = "microsoft.exchange.accepteddomain",
properties = OpenComplexDictionaryType(
additional_data = {
"identity" : "contoso.onmicrosoft.com",
"domain_type" : "InternalRelay",
"ensure" : "Present",
}
),
),
BaselineResource(
display_name = "Mail Contact Resource",
resource_type = "microsoft.exchange.mailcontact",
properties = OpenComplexDictionaryType(
additional_data = {
"name" : "Chris",
"display_name" : "Chris",
"external_email_address" : "SMTP:chris@fabrikam.com",
"alias" : "Chrisa",
"ensure" : "Present",
}
),
),
],
),
)
result = await graph_client.admin.configuration_management.configuration_monitors.post(request_body)
Ниже показан пример отклика.