Я пытаюсь применить Политики условного доступа с помощью API, но сталкиваюсь с некоторыми проблемами. Приведенная ниже политика работает без проблем.
{
"displayName": "TEST - Block Policy: Block All Application access from a non-trusted location",
"state": "disabled",
"conditions": {
"users": {
"includeUsers": [
"All"
]
},
"applications": {
"includeApplications": [
"All"
]
},
"locations": {
"includeLocations": [
"All"
],
"excludeLocations": [
"AllTrusted"
]
},
},
"grantControls": {
"operator": "OR",
"builtInControls": [
"block"
]
}
}
Но если я добавлю конкретное c приложение в "inculdeApplications", я получу отказ в доступе.
{
"displayName": "TEST - Block Policy: Block Azure Management access from a non-trusted location",
"state": "disabled",
"conditions": {
"users": {
"includeUsers": [
"All"
]
},
"applications": {
"includeApplications": [
"797f4846-ba00-4fd7-ba43-dac1f8f63013"
]
},
"locations": {
"includeLocations": [
"All"
],
"excludeLocations": [
"AllTrusted"
]
},
},
"grantControls": {
"operator": "OR",
"builtInControls": [
"block"
]
}
}
: System.Net.WebException: The remote server returned an error: (403) Forbidden.
Я могу добавить приложение вручную в GUI, но я хочу сделать это программно.
SPN имеет следующие разрешения API в Graph:
- Directory.ReadAll
- Policy.ReadAll
- Policy.ReadWrite.ConditionalAccess
- User.Read
Есть ли какие-либо ограничения в API или есть что-то, чего мне не хватает?