Теоретически вам требуется для выполнения сценария (# 4 выше) в соответствии с предупреждением, сгенерированным из # 3 выше.
Вы получаете сообщение «Ошибка клиента 404: не найдено для URL-адреса» означает, что endpont https://graph.windows.net/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/oauth2PermissionGrants?$filter=clientId%20eq%20%27e62c4745-cccc-cccc-cccc-71e5599261fc%27&api-version=1.6
возвращает нулевой результат.
cmd az ad app permission grant
сначала запросит его, а затем вставит новое разрешение. Ошибка возникает на этапе запроса. Я не думаю, что это разумно. Ваше требование - добавить разрешение, но этот cmd должен сначала запросить существующее разрешение. Если результат пуст, вы не сможете его добавить.
Таким образом, logi c для этого cmd az ad app permission grant
в настоящее время не идеален. Это может работать лучше для существующего приложения Azure AD (которое имеет субъект-службу), но не для нового созданного приложения Azure AD (которое не имеет субъекта-службы).
Обходной путь - использовать az ad app permission admin-consent --id $appid
вместо az ad app permission grant
. См. Ссылку здесь . Он охватывает то, что может az ad app permission grant
.
После того, как вы выполните az ad app permission admin-consent
один раз, он сгенерирует принципала службы для приложения Azure AD, а затем вы сможете использовать az ad app permission grant
позже.