UserAssIgnedMsi и я также не смог его запустить с помощью Singletenant ), включая соединение OAuth (протестированное и работая как с AAD, так и с AAD V2):
В коде VS у меня есть Python 3.11 venv. Я успешно запускаю свое приложение для бот и открываю его в эмуляторе, также предоставляя идентификатор приложения и секрет клиента:
Однако, когда поток начинает выполнять логику аутентификации, я получаю эту ошибку в конфликте, в эфире. На данный момент я в замешательстве и не имею дальнейших идей, как отладить это, учитывая, что мои ресурсы и конфигурации, по -видимому, правильно установлены. Я работаю в арендаторе клиента, где у меня есть роль вкладчика, и я создал все заявленные ресурсы самостоятельно. Возможно ли что -то администратором, чтобы что -то разрешать? Чего мне не хватает? < /P>
[on_turn_error] unhandled error: Operation returned an invalid status code 'Unauthorized'
Traceback (most recent call last):
File "working_dir\.venv\Lib\site-packages\botbuilder\core\bot_adapter.py", line 174, in run_pipeline
return await self._middleware.receive_activity_with_status(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\core\middleware_set.py", line 69, in receive_activity_with_status
return await self.receive_activity_internal(context, callback)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\core\middleware_set.py", line 79, in receive_activity_internal
return await callback(context)
^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\bot\bots\dialog_bot.py", line 31, in on_turn
await super().on_turn(turn_context)
File "working_dir\.venv\Lib\site-packages\botbuilder\core\activity_handler.py", line 70, in on_turn
await self.on_message_activity(turn_context)
File "working_dir\bot\bots\dialog_bot.py", line 38, in on_message_activity
await DialogHelper.run_dialog(
File "working_dir\bot\helpers\dialog_helper.py", line 16, in run_dialog
await dialog_context.begin_dialog(dialog.id)
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\dialog_context.py", line 121, in begin_dialog
return await dialog.begin_dialog(self, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\component_dialog.py", line 67, in begin_dialog
turn_result = await self.on_begin_dialog(inner_dc, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\bot\dialogs\logout_dialog.py", line 21, in on_begin_dialog
return await super().on_begin_dialog(inner_dc, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\component_dialog.py", line 221, in on_begin_dialog
return await inner_dc.begin_dialog(self.initial_dialog_id, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\dialog_context.py", line 121, in begin_dialog
return await dialog.begin_dialog(self, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\waterfall_dialog.py", line 64, in begin_dialog
return await self.run_step(dialog_context, 0, DialogReason.BeginCalled, None)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\waterfall_dialog.py", line 154, in run_step
return await self.on_step(step_context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\waterfall_dialog.py", line 130, in on_step
return await self._steps[step_context.index](step_context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\bot\dialogs\main_dialog.py", line 51, in prompt_step
return await step_context.begin_dialog(OAuthPrompt.__name__)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\dialog_context.py", line 121, in begin_dialog
return await dialog.begin_dialog(self, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\prompts\oauth_prompt.py", line 168, in begin_dialog
output = await _UserTokenAccess.get_user_token(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\_user_token_access.py", line 27, in get_user_token
return await user_token_client.get_user_token(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botframework\connector\auth\_user_token_client_impl.py", line 44, in get_user_token
result = await self._client.user_token.get_token(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "working_dir\.venv\Lib\site-packages\botframework\connector\token_api\aio\operations_async\_user_token_operations_async.py", line 100, in get_token
raise models.ErrorResponseException(self._deserialize, response)
botframework.connector.token_api.models._models_py3.ErrorResponseException: Operation returned an invalid status code 'Unauthorized'
Datetime with no tzinfo will be considered UTC.
< /code>
Пробовал войти в систему от эмулятора бота и получил несанкционированный ответ < /code>. Это произойдет до того, как будет отображаться даже диалог журнала.
Я ищу помощь в реализации аутентификации AAD в проекте Framework с помощью Python SDK. < /p> Что я сделал: < /p> [list] [*] https://github.com/microsoft/botbuilder-samples/tree/main/samples/python/24.bot-authentication-msgraph Ваш https://learn.microsoft.com/en-us/azure/bot-service/bot-builder-authentication?view=azure-bot-service-4.0&tabs=multinant%2Caadv2%2CCCHARP
UserAssIgnedMsi и я также не смог его запустить с помощью Singletenant ), включая соединение OAuth (протестированное и работая как с AAD, так и с AAD V2): В коде VS у меня есть Python 3.11 venv. Я успешно запускаю свое приложение для бот и открываю его в эмуляторе, также предоставляя идентификатор приложения и секрет клиента:
Однако, когда поток начинает выполнять логику аутентификации, я получаю эту ошибку в конфликте, в эфире. На данный момент я в замешательстве и не имею дальнейших идей, как отладить это, учитывая, что мои ресурсы и конфигурации, по -видимому, правильно установлены. Я работаю в арендаторе клиента, где у меня есть роль вкладчика, и я создал все заявленные ресурсы самостоятельно. Возможно ли что -то администратором, чтобы что -то разрешать? Чего мне не хватает? < /P>
[on_turn_error] unhandled error: Operation returned an invalid status code 'Unauthorized' Traceback (most recent call last): File "working_dir\.venv\Lib\site-packages\botbuilder\core\bot_adapter.py", line 174, in run_pipeline return await self._middleware.receive_activity_with_status( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\core\middleware_set.py", line 69, in receive_activity_with_status return await self.receive_activity_internal(context, callback) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\core\middleware_set.py", line 79, in receive_activity_internal return await callback(context) ^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\bot\bots\dialog_bot.py", line 31, in on_turn await super().on_turn(turn_context) File "working_dir\.venv\Lib\site-packages\botbuilder\core\activity_handler.py", line 70, in on_turn await self.on_message_activity(turn_context) File "working_dir\bot\bots\dialog_bot.py", line 38, in on_message_activity await DialogHelper.run_dialog( File "working_dir\bot\helpers\dialog_helper.py", line 16, in run_dialog await dialog_context.begin_dialog(dialog.id) File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\dialog_context.py", line 121, in begin_dialog return await dialog.begin_dialog(self, options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\component_dialog.py", line 67, in begin_dialog turn_result = await self.on_begin_dialog(inner_dc, options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\bot\dialogs\logout_dialog.py", line 21, in on_begin_dialog return await super().on_begin_dialog(inner_dc, options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\component_dialog.py", line 221, in on_begin_dialog return await inner_dc.begin_dialog(self.initial_dialog_id, options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\dialog_context.py", line 121, in begin_dialog return await dialog.begin_dialog(self, options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\waterfall_dialog.py", line 64, in begin_dialog return await self.run_step(dialog_context, 0, DialogReason.BeginCalled, None) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\waterfall_dialog.py", line 154, in run_step return await self.on_step(step_context) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\waterfall_dialog.py", line 130, in on_step return await self._steps[step_context.index](step_context) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\bot\dialogs\main_dialog.py", line 51, in prompt_step return await step_context.begin_dialog(OAuthPrompt.__name__) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\dialog_context.py", line 121, in begin_dialog return await dialog.begin_dialog(self, options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\prompts\oauth_prompt.py", line 168, in begin_dialog output = await _UserTokenAccess.get_user_token( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botbuilder\dialogs\_user_token_access.py", line 27, in get_user_token return await user_token_client.get_user_token( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botframework\connector\auth\_user_token_client_impl.py", line 44, in get_user_token result = await self._client.user_token.get_token( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "working_dir\.venv\Lib\site-packages\botframework\connector\token_api\aio\operations_async\_user_token_operations_async.py", line 100, in get_token raise models.ErrorResponseException(self._deserialize, response) botframework.connector.token_api.models._models_py3.ErrorResponseException: Operation returned an invalid status code 'Unauthorized' Datetime with no tzinfo will be considered UTC. < /code> [list] [*] Пробовал войти в систему от эмулятора бота и получил несанкционированный ответ < /code>. Это произойдет до того, как будет отображаться даже диалог журнала. [/list]
Мне нужна помощь в реализации аутентификации AAD в проекте платформы бота с помощью Python SDK.
Что я сделал:
клонировал этот образец
подписался эта документация
настроил ресурс бота MultiTenant (боты, написанные на Python, не работают с типом...
Мне нужна помощь в реализации аутентификации AAD в проекте платформы бота с помощью Python SDK.
Что я сделал:
клонировал этот образец
подписался эта документация
настроил ресурс бота MultiTenant (боты, написанные на Python, не работают с типом...
У меня есть бот C#, написанный в рамках бота, реализация очень напоминает образец MSSOFT MS Auth Auth. await stepContext.BeginDialogAsync(nameof(OAuthPrompt), null, ct);
Очень редко, диалог будет успешно отображать подсказку для входа в систему,...
У меня есть бот C#, написанный в рамках бота, реализация очень напоминает образец MSSOFT MS Auth Auth. await stepContext.BeginDialogAsync(nameof(OAuthPrompt), null, ct);
Очень редко, диалог будет успешно отображать подсказку для входа в систему,...