Как использовать несколько областей для Authlib

Я работаю с Authlib версии 0.7. Я пытаюсь предоставить клиенту доступ к нескольким областям, так как я делаю это при создании клиента, я передаю строку, разделенную пробелами, как область действия (например, для "A B"). Когда я генерирую токен доступа для этого клиента, его область действия устанавливается на "A B". Однако, когда я пытаюсь получить доступ к ресурсу, защищенному областью "A" (для защиты ресурса я добавил @require_oauth("A")), мне отказывают в доступе и я получаю ошибку http 403. Буду признателен за любые предложения, которые могут помочь мне исправить это. Спасибо

0 ответов

Ознакомьтесь с документацией по нескольким областям:

https://docs.authlib.org/en/latest/flask/2/resource-server.html

Вы можете применить несколько областей к одной конечной точке в режимах И и ИЛИ. По умолчанию используется режим AND.

@app.route('/profile')
@require_oauth('profile email', 'AND')
def user_profile():
    user = current_token.user
    return jsonify(user)
Другие вопросы по тегам