命名空间:microsoft.graph
创建新的自定义 authenticationStrengthPolicy 对象。
此 API 可用于以下国家级云部署。
全局服务 |
美国政府 L4 |
美国政府 L5 (DOD) |
由世纪互联运营的中国 |
✅ |
✅ |
✅ |
✅ |
权限
为此 API 选择标记为最低特权的权限。
只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
权限类型 |
最低特权权限 |
更高特权权限 |
委派(工作或学校帐户) |
Policy.ReadWrite.ConditionalAccess |
Policy.ReadWrite.AuthenticationMethod |
委派(个人 Microsoft 帐户) |
不支持。 |
不支持。 |
应用程序 |
Policy.ReadWrite.ConditionalAccess |
Policy.ReadWrite.AuthenticationMethod |
HTTP 请求
POST /policies/authenticationStrengthPolicies
名称 |
说明 |
Authorization |
持有者 {token}。 必填。 详细了解 身份验证和授权。 |
Content-Type |
application/json. 必需。 |
请求正文
在请求正文中,提供 authenticationStrengthPolicy 对象的 JSON 表示形式。
创建 authenticationStrengthPolicy 时,可以指定以下属性。
属性 |
类型 |
说明 |
displayName |
String |
要创建的策略的显示名称。 必需。 |
description |
String |
要创建的策略的说明。 可选。 |
allowedCombinations |
authenticationMethodModes 集合 |
此身份验证强度策略允许的身份验证方法组合。 此标记枚举的可能值为:password 、、、voice 、、softwareOath hardwareOath fido2 windowsHelloForBusiness microsoftAuthenticatorPush temporaryAccessPassMultiUse deviceBasedPush email temporaryAccessPassOneTime sms 、x509CertificateSingleFactor 、x509CertificateMultiFactor 、federatedSingleFactor 、 。 federatedMultiFactor unknownFutureValue 对于允许的组合列表,请调用 List authenticationMethodModes API。 必填。 |
响应
如果成功,此方法在 201 Created
响应正文中返回响应代码和 authenticationStrengthPolicy 对象。
示例
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/policies/authenticationStrengthPolicies
Content-Type: application/json
{
"displayName": "Example",
"requirementsSatisfied": "mfa",
"allowedCombinations": [
"fido2"
],
"combinationConfigurations@odata.context": "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations",
"combinationConfigurations": [
{
"@odata.type": "#microsoft.graph.fido2CombinationConfiguration",
"id": "42235320-c8db-4d8c-9344-8f1ce87f734b",
"appliesToCombinations": [
"fido2"
],
"allowedAAGUIDs": [
"de1e552d-db1d-4423-a619-566b625cdc84",
"90a3ccdf-635c-4729-a248-9b709135078f"
]
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new AuthenticationStrengthPolicy
{
DisplayName = "Example",
RequirementsSatisfied = AuthenticationStrengthRequirements.Mfa,
AllowedCombinations = new List<AuthenticationMethodModes?>
{
AuthenticationMethodModes.Fido2,
},
CombinationConfigurations = new List<AuthenticationCombinationConfiguration>
{
new Fido2CombinationConfiguration
{
OdataType = "#microsoft.graph.fido2CombinationConfiguration",
Id = "42235320-c8db-4d8c-9344-8f1ce87f734b",
AppliesToCombinations = new List<AuthenticationMethodModes?>
{
AuthenticationMethodModes.Fido2,
},
AllowedAAGUIDs = new List<string>
{
"de1e552d-db1d-4423-a619-566b625cdc84",
"90a3ccdf-635c-4729-a248-9b709135078f",
},
},
},
AdditionalData = new Dictionary<string, object>
{
{
"combinationConfigurations@odata.context" , "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations"
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Policies.AuthenticationStrengthPolicies.PostAsync(requestBody);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
mgc policies authentication-strength-policies create --body '{\
"displayName": "Example",\
"requirementsSatisfied": "mfa",\
"allowedCombinations": [\
"fido2"\
],\
"combinationConfigurations@odata.context": "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations",\
"combinationConfigurations": [\
{\
"@odata.type": "#microsoft.graph.fido2CombinationConfiguration",\
"id": "42235320-c8db-4d8c-9344-8f1ce87f734b",\
"appliesToCombinations": [\
"fido2"\
],\
"allowedAAGUIDs": [\
"de1e552d-db1d-4423-a619-566b625cdc84",\
"90a3ccdf-635c-4729-a248-9b709135078f"\
]\
}\
]\
}\
'
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewAuthenticationStrengthPolicy()
displayName := "Example"
requestBody.SetDisplayName(&displayName)
requirementsSatisfied := graphmodels.MFA_AUTHENTICATIONSTRENGTHREQUIREMENTS
requestBody.SetRequirementsSatisfied(&requirementsSatisfied)
allowedCombinations := []graphmodels.AuthenticationMethodModesable {
authenticationMethodModes := graphmodels.FIDO2_AUTHENTICATIONMETHODMODES
requestBody.SetAuthenticationMethodModes(&authenticationMethodModes)
}
requestBody.SetAllowedCombinations(allowedCombinations)
authenticationCombinationConfiguration := graphmodels.NewFido2CombinationConfiguration()
id := "42235320-c8db-4d8c-9344-8f1ce87f734b"
authenticationCombinationConfiguration.SetId(&id)
appliesToCombinations := []graphmodels.AuthenticationMethodModesable {
authenticationMethodModes := graphmodels.FIDO2_AUTHENTICATIONMETHODMODES
authenticationCombinationConfiguration.SetAuthenticationMethodModes(&authenticationMethodModes)
}
authenticationCombinationConfiguration.SetAppliesToCombinations(appliesToCombinations)
allowedAAGUIDs := []string {
"de1e552d-db1d-4423-a619-566b625cdc84",
"90a3ccdf-635c-4729-a248-9b709135078f",
}
authenticationCombinationConfiguration.SetAllowedAAGUIDs(allowedAAGUIDs)
combinationConfigurations := []graphmodels.AuthenticationCombinationConfigurationable {
authenticationCombinationConfiguration,
}
requestBody.SetCombinationConfigurations(combinationConfigurations)
additionalData := map[string]interface{}{
"combinationConfigurations@odata.context" : "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations",
}
requestBody.SetAdditionalData(additionalData)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
authenticationStrengthPolicies, err := graphClient.Policies().AuthenticationStrengthPolicies().Post(context.Background(), requestBody, nil)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
AuthenticationStrengthPolicy authenticationStrengthPolicy = new AuthenticationStrengthPolicy();
authenticationStrengthPolicy.setDisplayName("Example");
authenticationStrengthPolicy.setRequirementsSatisfied(EnumSet.of(AuthenticationStrengthRequirements.Mfa));
LinkedList<AuthenticationMethodModes> allowedCombinations = new LinkedList<AuthenticationMethodModes>();
allowedCombinations.add(AuthenticationMethodModes.Fido2);
authenticationStrengthPolicy.setAllowedCombinations(allowedCombinations);
LinkedList<AuthenticationCombinationConfiguration> combinationConfigurations = new LinkedList<AuthenticationCombinationConfiguration>();
Fido2CombinationConfiguration authenticationCombinationConfiguration = new Fido2CombinationConfiguration();
authenticationCombinationConfiguration.setOdataType("#microsoft.graph.fido2CombinationConfiguration");
authenticationCombinationConfiguration.setId("42235320-c8db-4d8c-9344-8f1ce87f734b");
LinkedList<AuthenticationMethodModes> appliesToCombinations = new LinkedList<AuthenticationMethodModes>();
appliesToCombinations.add(AuthenticationMethodModes.Fido2);
authenticationCombinationConfiguration.setAppliesToCombinations(appliesToCombinations);
LinkedList<String> allowedAAGUIDs = new LinkedList<String>();
allowedAAGUIDs.add("de1e552d-db1d-4423-a619-566b625cdc84");
allowedAAGUIDs.add("90a3ccdf-635c-4729-a248-9b709135078f");
authenticationCombinationConfiguration.setAllowedAAGUIDs(allowedAAGUIDs);
combinationConfigurations.add(authenticationCombinationConfiguration);
authenticationStrengthPolicy.setCombinationConfigurations(combinationConfigurations);
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("combinationConfigurations@odata.context", "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations");
authenticationStrengthPolicy.setAdditionalData(additionalData);
AuthenticationStrengthPolicy result = graphClient.policies().authenticationStrengthPolicies().post(authenticationStrengthPolicy);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const authenticationStrengthPolicy = {
displayName: 'Example',
requirementsSatisfied: 'mfa',
allowedCombinations: [
'fido2'
],
'combinationConfigurations@odata.context': 'https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies(\'5790842a-5bab-44c2-9cf1-b38d675b70ea\')/combinationConfigurations',
combinationConfigurations: [
{
'@odata.type': '#microsoft.graph.fido2CombinationConfiguration',
id: '42235320-c8db-4d8c-9344-8f1ce87f734b',
appliesToCombinations: [
'fido2'
],
allowedAAGUIDs: [
'de1e552d-db1d-4423-a619-566b625cdc84',
'90a3ccdf-635c-4729-a248-9b709135078f'
]
}
]
};
await client.api('/policies/authenticationStrengthPolicies')
.post(authenticationStrengthPolicy);
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\AuthenticationStrengthPolicy;
use Microsoft\Graph\Generated\Models\AuthenticationStrengthRequirements;
use Microsoft\Graph\Generated\Models\AuthenticationMethodModes;
use Microsoft\Graph\Generated\Models\AuthenticationCombinationConfiguration;
use Microsoft\Graph\Generated\Models\Fido2CombinationConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new AuthenticationStrengthPolicy();
$requestBody->setDisplayName('Example');
$requestBody->setRequirementsSatisfied(new AuthenticationStrengthRequirements('mfa'));
$requestBody->setAllowedCombinations([new AuthenticationMethodModes('fido2'), ]);
$combinationConfigurationsAuthenticationCombinationConfiguration1 = new Fido2CombinationConfiguration();
$combinationConfigurationsAuthenticationCombinationConfiguration1->setOdataType('#microsoft.graph.fido2CombinationConfiguration');
$combinationConfigurationsAuthenticationCombinationConfiguration1->setId('42235320-c8db-4d8c-9344-8f1ce87f734b');
$combinationConfigurationsAuthenticationCombinationConfiguration1->setAppliesToCombinations([new AuthenticationMethodModes('fido2'), ]);
$combinationConfigurationsAuthenticationCombinationConfiguration1->setAllowedAAGUIDs(['de1e552d-db1d-4423-a619-566b625cdc84', '90a3ccdf-635c-4729-a248-9b709135078f', ]);
$combinationConfigurationsArray []= $combinationConfigurationsAuthenticationCombinationConfiguration1;
$requestBody->setCombinationConfigurations($combinationConfigurationsArray);
$additionalData = [
'combinationConfigurations@odata.context' => 'https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies(\'5790842a-5bab-44c2-9cf1-b38d675b70ea\')/combinationConfigurations',
];
$requestBody->setAdditionalData($additionalData);
$result = $graphServiceClient->policies()->authenticationStrengthPolicies()->post($requestBody)->wait();
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
Import-Module Microsoft.Graph.Identity.SignIns
$params = @{
displayName = "Example"
requirementsSatisfied = "mfa"
allowedCombinations = @(
"fido2"
)
"combinationConfigurations@odata.context" = "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations"
combinationConfigurations = @(
@{
"@odata.type" = "#microsoft.graph.fido2CombinationConfiguration"
id = "42235320-c8db-4d8c-9344-8f1ce87f734b"
appliesToCombinations = @(
"fido2"
)
allowedAAGUIDs = @(
"de1e552d-db1d-4423-a619-566b625cdc84"
"90a3ccdf-635c-4729-a248-9b709135078f"
)
}
)
}
New-MgPolicyAuthenticationStrengthPolicy -BodyParameter $params
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.authentication_strength_policy import AuthenticationStrengthPolicy
from msgraph.generated.models.authentication_strength_requirements import AuthenticationStrengthRequirements
from msgraph.generated.models.authentication_method_modes import AuthenticationMethodModes
from msgraph.generated.models.authentication_combination_configuration import AuthenticationCombinationConfiguration
from msgraph.generated.models.fido2_combination_configuration import Fido2CombinationConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = AuthenticationStrengthPolicy(
display_name = "Example",
requirements_satisfied = AuthenticationStrengthRequirements.Mfa,
allowed_combinations = [
AuthenticationMethodModes.Fido2,
],
combination_configurations = [
Fido2CombinationConfiguration(
odata_type = "#microsoft.graph.fido2CombinationConfiguration",
id = "42235320-c8db-4d8c-9344-8f1ce87f734b",
applies_to_combinations = [
AuthenticationMethodModes.Fido2,
],
allowed_a_a_g_u_i_ds = [
"de1e552d-db1d-4423-a619-566b625cdc84",
"90a3ccdf-635c-4729-a248-9b709135078f",
],
),
],
additional_data = {
"combination_configurations@odata_context" : "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('5790842a-5bab-44c2-9cf1-b38d675b70ea')/combinationConfigurations",
}
)
result = await graph_client.policies.authentication_strength_policies.post(request_body)
有关如何将 SDK 添加到项目并创建 authProvider 实例的详细信息,请参阅 SDK 文档。
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies/$entity",
"id": "7daf2132-6a2d-4e78-a699-b823babf4436",
"createdDateTime": "2024-07-23T17:10:58.1492045Z",
"modifiedDateTime": "2024-07-23T17:10:58.1492045Z",
"displayName": "Example",
"description": "",
"policyType": "custom",
"requirementsSatisfied": "mfa",
"allowedCombinations": [
"fido2"
],
"combinationConfigurations@odata.context": "https://graph.microsoft.com/v1.0/$metadata#policies/authenticationStrengthPolicies('7daf2132-6a2d-4e78-a699-b823babf4436')/combinationConfigurations",
"combinationConfigurations": [
{
"@odata.type": "#microsoft.graph.fido2CombinationConfiguration",
"id": "c0fdf2f9-3b3f-4bbf-988c-17606ea4b4e4",
"appliesToCombinations": [
"fido2"
],
"allowedAAGUIDs": [
"de1e552d-db1d-4423-a619-566b625cdc84",
"90a3ccdf-635c-4729-a248-9b709135078f"
]
}
]
}