python bot框架错误:未经授权的访问。请求未获授权

时间:2020-02-21 11:31:04

标签: python botframework

我正在使用bot-framework与基于python的bot合作。我正在使用示例cookiecutter回显模板。 Echo Bot

我已将机器人代码部署为通过API网关连接的AWS Lambda函数。使用 NO APP凭据的Bot模拟器测试成功。

当我尝试使用注册的APP ID和APP密码进行测试时出现错误。我已经使用以下网址注册了我的漫游器: dev bot framework

我需要在机器人中添加其他身份验证条款吗?如果有人能指出我正确的方向,那就太好了。谢谢!

这是错误回溯:

Traceback (most recent call last):
  File "C:\Users\abhishek.mishra\AppData\Local\Programs\Python\Python36\lib\site-packages\botbuilder\core\bot_framework_adapter.py", line 209, in process_activity
    await self.authenticate_request(activity, auth_header)
  File "C:\Users\abhishek.mishra\AppData\Local\Programs\Python\Python36\lib\site-packages\botbuilder\core\bot_framework_adapter.py", line 241, in authenticate_request
    self.settings.channel_service,
  File "C:\Users\abhishek.mishra\AppData\Local\Programs\Python\Python36\lib\site-packages\botframework\connector\auth\jwt_token_validation.py", line 42, in authenticate_request
    raise Exception("Unauthorized Access. Request is not authorized")
Exception: Unauthorized Access. Request is not authorized

1 个答案:

答案 0 :(得分:1)

我将自行解决此问题,因为我能够解决该错误。它确实提出了某些安全问题,但解决了无效的访问问题。

根据文档Bot Registration

在“支持帐户类型”部分中,您必须选择以下两种方法之一 多租户类型,即:任何组织目录中的帐户 (任何Azure AD-多租户)或任何组织中的帐户 目录(任何Azure AD-多租户)和个人Microsoft帐户 (例如Skype,Xbox,Outlook.com),则在创建应用程序时使用,否则 机器人无法正常工作。

对应用程序注册进行此更改可以解决该错误,并且该服务可以正常运行。感谢所有尝试使用其输入的人。