我正在使用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
答案 0 :(得分:1)
我将自行解决此问题,因为我能够解决该错误。它确实提出了某些安全问题,但解决了无效的访问问题。
根据文档Bot Registration
在“支持帐户类型”部分中,您必须选择以下两种方法之一 多租户类型,即:任何组织目录中的帐户 (任何Azure AD-多租户)或任何组织中的帐户 目录(任何Azure AD-多租户)和个人Microsoft帐户 (例如Skype,Xbox,Outlook.com),则在创建应用程序时使用,否则 机器人无法正常工作。
对应用程序注册进行此更改可以解决该错误,并且该服务可以正常运行。感谢所有尝试使用其输入的人。