Пространство имен: microsoft.graph
Обновите свойства объекта remoteDesktopSecurityConfiguration в servicePrincipal. Используйте эту конфигурацию для включения или отключения протокола проверки подлинности служб удаленных рабочих столов (RDS) Microsoft Entra ID для проверки подлинности пользователя для Microsoft Entra присоединенных или Microsoft Entra гибридных присоединенных устройств.
Этот API доступен в следующих национальных облачных развертываниях.
| Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
| Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
| Делегированные (рабочая или учебная учетная запись) |
Application-RemoteDesktopConfig.ReadWrite.All |
Application.ReadWrite.All, Directory.ReadWrite.All |
| Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
| Приложение |
Application-RemoteDesktopConfig.ReadWrite.All |
Application.ReadWrite.All, Directory.ReadWrite.All |
Важно!
Для делегированного доступа с использованием рабочих или учебных учетных записей вошедшего пользователя должен быть владельцем или членом группы либо ему должна быть назначена поддерживаемая роль Microsoft Entra или настраиваемая роль, которая предоставляет разрешения, необходимые для этой операции. Эта операция поддерживает следующие встроенные роли, которые предоставляют только минимальные необходимые привилегии:
- Администратор приложения
- Администратор облачного приложения
HTTP-запрос
PATCH /servicePrincipals/{servicePrincipalsId}/remoteDesktopSecurityConfiguration
Текст запроса
В тексте запроса укажите только значения свойств для обновления. Существующие свойства, которые не включены в текст запроса, сохраняют свои предыдущие значения или пересчитываются на основе изменений других значений свойств.
В следующей таблице указаны свойства, которые можно обновить.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 200 OK и обновленный объект remoteDesktopSecurityConfiguration в теле отклика.
Примеры
Запрос
Ниже показан пример запроса.
PATCH https://graph.microsoft.com/v1.0/servicePrincipals/00af5dfb-85da-4b41-a677-0c6b86dd34f8/remoteDesktopSecurityConfiguration
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.remoteDesktopSecurityConfiguration",
"isRemoteDesktopProtocolEnabled": true
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new RemoteDesktopSecurityConfiguration
{
OdataType = "#microsoft.graph.remoteDesktopSecurityConfiguration",
IsRemoteDesktopProtocolEnabled = true,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.ServicePrincipals["{servicePrincipal-id}"].RemoteDesktopSecurityConfiguration.PatchAsync(requestBody);
Подробнее о том, как добавить 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.NewRemoteDesktopSecurityConfiguration()
isRemoteDesktopProtocolEnabled := true
requestBody.SetIsRemoteDesktopProtocolEnabled(&isRemoteDesktopProtocolEnabled)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
remoteDesktopSecurityConfiguration, err := graphClient.ServicePrincipals().ByServicePrincipalId("servicePrincipal-id").RemoteDesktopSecurityConfiguration().Patch(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);
RemoteDesktopSecurityConfiguration remoteDesktopSecurityConfiguration = new RemoteDesktopSecurityConfiguration();
remoteDesktopSecurityConfiguration.setOdataType("#microsoft.graph.remoteDesktopSecurityConfiguration");
remoteDesktopSecurityConfiguration.setIsRemoteDesktopProtocolEnabled(true);
RemoteDesktopSecurityConfiguration result = graphClient.servicePrincipals().byServicePrincipalId("{servicePrincipal-id}").remoteDesktopSecurityConfiguration().patch(remoteDesktopSecurityConfiguration);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const remoteDesktopSecurityConfiguration = {
'@odata.type': '#microsoft.graph.remoteDesktopSecurityConfiguration',
isRemoteDesktopProtocolEnabled: true
};
await client.api('/servicePrincipals/00af5dfb-85da-4b41-a677-0c6b86dd34f8/remoteDesktopSecurityConfiguration')
.update(remoteDesktopSecurityConfiguration);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\RemoteDesktopSecurityConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new RemoteDesktopSecurityConfiguration();
$requestBody->setOdataType('#microsoft.graph.remoteDesktopSecurityConfiguration');
$requestBody->setIsRemoteDesktopProtocolEnabled(true);
$result = $graphServiceClient->servicePrincipals()->byServicePrincipalId('servicePrincipal-id')->remoteDesktopSecurityConfiguration()->patch($requestBody)->wait();
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
Import-Module Microsoft.Graph.Applications
$params = @{
"@odata.type" = "#microsoft.graph.remoteDesktopSecurityConfiguration"
isRemoteDesktopProtocolEnabled = $true
}
Update-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $servicePrincipalId -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.remote_desktop_security_configuration import RemoteDesktopSecurityConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = RemoteDesktopSecurityConfiguration(
odata_type = "#microsoft.graph.remoteDesktopSecurityConfiguration",
is_remote_desktop_protocol_enabled = True,
)
result = await graph_client.service_principals.by_service_principal_id('servicePrincipal-id').remote_desktop_security_configuration.patch(request_body)
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.remoteDesktopSecurityConfiguration",
"id": "ca738153-c98a-f822-a7d1-5a6e1058462b",
"isRemoteDesktopProtocolEnabled": true
}