命名空间:microsoft.graph
重要
Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
验证 域的所有权。 此作仅适用于未经验证的域。 对于未验证的域, isVerified 属性为 false。
注意
通过 Microsoft Graph 验证域不会配置域以用于 Microsoft 365 服务(如 Exchange)。 完全配置域以使用 Microsoft 365 产品可能需要额外的步骤。 有关详细信息,请参阅 Microsoft 365 管理员设置。
此 API 可用于以下国家级云部署。
| 全局服务 |
美国政府 L4 |
美国政府 L5 (DOD) |
由世纪互联运营的中国 |
| ✅ |
✅ |
✅ |
✅ |
权限
为此 API 选择标记为最低特权的权限。
只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
| 权限类型 |
最低特权权限 |
更高特权权限 |
| 委派(工作或学校帐户) |
Domain.ReadWrite.All |
不可用。 |
| 委派(个人 Microsoft 帐户) |
不支持。 |
不支持。 |
| 应用程序 |
Domain.ReadWrite.All |
不可用。 |
重要
在具有工作或学校帐户的委托方案中,必须为登录用户分配受支持的Microsoft Entra角色或具有支持的角色权限的自定义角色。
域名管理员 是此作支持的最低特权角色。
HTTP 请求
POST /domains/{id}/verify
对于 {id},请使用其完全限定的域名指定该域。
| 名称 |
说明 |
| Authorization |
持有者 {token}。 必填。 详细了解 身份验证和授权。 |
| Content-Type |
application/json |
请求正文
在请求正文中,提供参数的 JSON 表示形式。
下表列出了调用此作时可选的参数。
| 参数 |
类型 |
说明 |
| forceTakeover |
布尔值 |
可选。 用于非托管域的外部管理员接管。 此参数的默认值为 false。
如果要验证的域当前链接到非托管租户,但你拥有该域,请使用此参数接管该域。 仅当此租户通过向域注册机构添加 TXT 记录来验证其域所有权时,强制接管才会成功。 有关详细信息,请参阅在 Microsoft Entra ID 中以管理员身份接管非托管目录。 |
响应
如果成功,此方法在响应正文中返回 200 OK 响应代码和 domain 对象。
示例 1:验证域
请求
POST https://graph.microsoft.com/beta/domains/contoso.com/verify
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Domains["{domain-id}"].Verify.PostAsync();
// 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"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
verify, err := graphClient.Domains().ByDomainId("domain-id").Verify().Post(context.Background(), nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
var result = graphClient.domains().byDomainId("{domain-id}").verify().post();
const options = {
authProvider,
};
const client = Client.init(options);
await client.api('/domains/contoso.com/verify')
.version('beta')
.post();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$result = $graphServiceClient->domains()->byDomainId('domain-id')->verify()->post()->wait();
Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
Confirm-MgBetaDomain -DomainId $domainId
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
result = await graph_client.domains.by_domain_id('domain-id').verify.post()
响应
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"authenticationType": "authenticationType-value",
"availabilityStatus": "availabilityStatus-value",
"isAdminManaged": true,
"isDefault": true,
"isInitial": true,
"isRoot": true,
"name": "contoso.com"
}
示例 2:域的外部管理员接管
请求
POST https://graph.microsoft.com/beta/domains/contoso.com/verify
{
"forceTakeover": true
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Domains.Item.Verify;
var requestBody = new VerifyPostRequestBody
{
AdditionalData = new Dictionary<string, object>
{
{
"forceTakeover" , true
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Domains["{domain-id}"].Verify.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"
graphdomains "github.com/microsoftgraph/msgraph-beta-sdk-go/domains"
//other-imports
)
requestBody := graphdomains.NewVerifyPostRequestBody()
additionalData := map[string]interface{}{
forceTakeover := true
requestBody.SetForceTakeover(&forceTakeover)
}
requestBody.SetAdditionalData(additionalData)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
verify, err := graphClient.Domains().ByDomainId("domain-id").Verify().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.domains.item.verify.VerifyPostRequestBody verifyPostRequestBody = new com.microsoft.graph.beta.domains.item.verify.VerifyPostRequestBody();
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("forceTakeover", true);
verifyPostRequestBody.setAdditionalData(additionalData);
var result = graphClient.domains().byDomainId("{domain-id}").verify().post(verifyPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const domain = {
forceTakeover: true
};
await client.api('/domains/contoso.com/verify')
.version('beta')
.post(domain);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Domains\Item\Verify\VerifyPostRequestBody;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new VerifyPostRequestBody();
$additionalData = [
'forceTakeover' => true,
];
$requestBody->setAdditionalData($additionalData);
$result = $graphServiceClient->domains()->byDomainId('domain-id')->verify()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
$params = @{
forceTakeover = $true
}
Confirm-MgBetaDomain -DomainId $domainId -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.domains.item.verify.verify_post_request_body import VerifyPostRequestBody
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = VerifyPostRequestBody(
additional_data = {
"force_takeover" : True,
}
)
result = await graph_client.domains.by_domain_id('domain-id').verify.post(request_body)
响应
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"authenticationType": "authenticationType-value",
"availabilityStatus": "availabilityStatus-value",
"isAdminManaged": true,
"isDefault": true,
"isInitial": true,
"isRoot": true,
"name": "contoso.com",
"isVerified": true
}