"Запрос заблокирован, поскольку участник [PrincipalID] не имеет необходимых разрешений RBAC для выполнения действия" p>
(Полная ошибка)
"Код состояния ответа не указывает на успех: запрещено (403); Подстатус: 5301; ActivityId: [ActivityId]; Причина: ({\"code\":\"Запрещено\",\"message\":\"Запрос заблокирован авторизацией [cosmosdbaccountname]: запрос заблокирован, поскольку участник [PrincipalID] не имеет необходимых разрешений RBAC чтобы выполнить действие [Microsoft.DocumentDB/databaseAccounts/readMetadata] над ресурсом [/]. https://[cosmosdbaccountname].documents.azure.com/;\r\nRequestMethod: GET;\r\nHeader: длина авторизации: [AuthorizationLength];\r\nHeader: длина Cache-Control: 8;\r\nHeader : Длина пользовательского агента: [UserAgentLength];\r\nЗаголовок: Длина x-ms-версии: 10;\r\nЗаголовок: x-ms-cosmos-sdk-supportedcapabilities Длина: 1;\r\nЗаголовок: Длина принятия: 16;\r\n, URI запроса: /, RequestStats: , SDK: Windows/10.0.19045 Cosmos-netstandard-sdk/3.37.1);"}Microsoft.Azure.Cosmos.CosmosException"
Портал Azure:

Я владелец и единственный пользователь этой БД, я пытался убедитесь, что я являюсь владельцем, снова добавив эту роль в свою учетную запись. Я вошел в систему с помощью входа в систему az и azd auth. У меня уже есть и база данных, и контейнер.
Вот код, в котором я его использую (в качестве примера использованы британские стандарты)
Код: Выделить всё
using Azure.Identity;
using Microsoft.Azure.Cosmos;
CosmosClient client = new CosmosClient(
accountEndpoint: "https://[censored].documents.azure.com:[censored]/",
tokenCredential: new DefaultAzureCredential()
);
Database database = client.GetDatabase("SampleDB");
Container container = database.GetContainer("British-Standards");
British_Standard standard = new()
{
id = "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
Standard_Name = "BS 5720: Ventilation and Air Conditioning",
Standard_Description = "This standard provides guidance on the design,"+
" installation, testing, and commissioning of ventilation and air conditioning systems in buildings.",
Standard_Category = (StandardCategories)1 //Enum
};
ItemResponse
response = await container.CreateItemAsync(standard); //error here
Console.WriteLine(response.RequestCharge + "RUs for this test");
Console.WriteLine("test");
Это было протестировано сначала в vscode, а затем в Visual Studio для отладчика.< /п>
Подробнее здесь: https://stackoverflow.com/questions/792 ... et-library
Мобильная версия