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

python bot框架错误:未经授权的访问。请求未被授权,python,botframework,Python,Botframework,我正在使用bot框架使用一个基于python的bot。我正在使用示例cookiecutter echo模板 我已经将bot代码部署为AWS lambda函数,通过API网关连接。使用无应用程序凭据的机器人仿真程序测试成功 当我尝试使用注册的应用程序ID和应用程序密码进行测试时,我遇到错误。我已使用以下url注册了我的机器人: 我是否需要在我的bot中添加任何额外的身份验证规定?如果有人能给我指出正确的方向那就太好了。谢谢 这是错误回溯: Traceback (most recent call

我正在使用bot框架使用一个基于python的bot。我正在使用示例cookiecutter echo模板

我已经将bot代码部署为AWS lambda函数,通过API网关连接。使用应用程序凭据的机器人仿真程序测试成功

当我尝试使用注册的应用程序ID和应用程序密码进行测试时,我遇到错误。我已使用以下url注册了我的机器人:

我是否需要在我的bot中添加任何额外的身份验证规定?如果有人能给我指出正确的方向那就太好了。谢谢

这是错误回溯:

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

我将自己回答这个问题,因为我能够解决这个错误。它确实带来了某些安全问题,但解决了无效访问问题

根据文件

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


对应用程序注册进行此更改解决了错误,并且服务工作正常。感谢每一个试图插手他们的投入的人

你说机器人模拟器测试很好。那完全是本地的吗?当身份验证失败时,您是将应用程序ID/密码添加到仿真程序测试中,还是在部署后添加?如果您正在进行完全本地测试,则不希望/不需要设置应用程序ID/密码。它只需要在部署时添加就可以了。本地测试-本地应用程序没有应用程序id/密码-结果:通过b。使用AWS部署进行测试-在AWS上部署的Bot Flask应用程序没有应用程序id/密码-结果:通过c。使用app_id/密码在Bot门户上注册应用程序后进行测试-结果:未经授权访问失败。您是否已将appid和密码添加到config:Yes,我使用app id和密码更新了config.py。在非框架门户上注册应用程序后。这就是我遇到这些错误的时候。这三个测试用例都在使用仿真器吗?还是你在使用不同的聊天客户端?(因为这个帖子里有很多人,如果你想让我看到你的回复,你需要@提到我。)这看起来真的很奇怪,我找不到在哪里换租户。