小编hel*_*lbe的帖子

在 Python Flask 中从 Microsoft Teams bot 验证 HMAC

我正在尝试按照有关如何构建自定义机器人的说明使用 Flask 构建 Microsoft Teams 聊天机器人。但是,我无法验证我真正想要的安全性 HMAC 身份验证。

根据指南和文档,我发现我正在使用以下最小测试应用程序尝试计算传入请求的 HMAC。(机器人名称和描述DevBot以及下面用于测试的密钥/security_token)。

#!/usr/bin/python
# coding=utf-8

from flask import Flask, request, jsonify
import hmac, hashlib, base64, json

app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def webhook():
    if request.method == 'POST':

        # Authenticate
        security_token = b"O5XHU8OSzwx8w9YiM0URkR/Ij4TZZiZUwz7Swc+1hZE="
        request_data = request.get_data()
        digest = hmac.new(security_token, msg=request_data, digestmod=hashlib.sha256).digest()
        signature = base64.b64encode(digest).decode()


        # TODO: Verify signature = Authorization header HMAC here

        return jsonify({
            'type' : 'message',
            'text' : "Auth header: {0} <br>Calculated HMAC: {1}".format(request.headers.get('Authorization'), …
Run Code Online (Sandbox Code Playgroud)

python hmac flask microsoft-teams

3
推荐指数
1
解决办法
1496
查看次数

标签 统计

flask ×1

hmac ×1

microsoft-teams ×1

python ×1