Как использовать несколько областей для 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)