自定义Flask-JWT身份验证功能

Hanxue

在Flask初始化文件中,我有

app = Flask("myapp")
jwt = JWT(app, AuthController.staff_login, identity)
api.add_resource(StaffLogin, '/login')

StaffLogin 检查用户名/密码,然后依次调用 AuthController.staff_login

class AuthController():
    def __init__(self):
        # TODO: Create a config.yaml
        self.engine = create_engine(DefaultConfig.SQLALCHEMY_DATABASE_URI)
        Base.metadata.create_all(self.engine)

        DBSession = sessionmaker(bind=self.engine)
        self.session = DBSession()                   

    def staff_login(self, staff_name, staff_password):
        result = self.session.query(Staff) # Irrelevant details of query removed
        if Staff_Authentication.check_password(staff_password, query['staff_password']):
                # Build login_response as JSON
                return login_response

现在,我需要使用这种格式的自定义登录响应

[
    {
        "projects": [
            {
                "project_id": 1,
                "project_name": "omnipresence",
                "project_root": "/path/to/project/files"
            }
        ],
        "staff_id": 13,
        "staff_name": "adalovelace"
    }
]

如何Flask-JWT使用我的函数authenticate

vimalloc的

Flask-JWT很老,已经被废弃了。请查看flask-jwt-extended或flask-jwt-simple作为替代方案,它们可以更好地设计和维护(我是这些扩展的作者,所以我当然有偏见)。

它们是经过设置的,因此您可以提供自己的终结点,而不是让扩展为您管理终结点。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

具有自定义JWT身份验证的OAuth

使用Jwt Bearer身份验证的自定义声明

Django Rest Framework自定义JWT身份验证

ASPNET Core 2中的自定义策略身份验证(jwt身份验证)

Laravel自定义身份验证

JMeter自定义身份验证

创建自定义身份验证

Django身份验证自定义

Firebase 自定义身份验证

带有自定义令牌的身份验证流程,用于云功能上的Firebase身份验证

密钥泄漏:使用自定义JWT对用户进行身份验证

在.NET Core Web API中使用自定义属性进行JWT身份验证

JWT自定义过滤器中的身份验证管理器

在春季安全UsernamePasswordAuthenticationFilter JWT身份验证设置自定义登录网址

在Firebase中,如何从自定义jwt令牌身份验证获取当前登录的用户

向django-rest-framework-simple-jwt添加自定义用户身份验证

使用IdentityServer4对API进行自定义JWT身份验证

使用Firebase进行自定义身份验证并生成JWT

带有自定义API密钥中间件的.Net Core JWT身份验证

具有自定义身份验证类型的ASP.NET Core JWT

Django Rest Framework 中的 JWT 和自定义身份验证

使用Jwt令牌身份验证在Blazor Server App中自定义AuthenticationStateProvider

Azure 应用服务身份验证/授权和自定义 JWT 令牌

ASP Core 3.0 API令牌自定义令牌身份验证(不是jwt!)

带有JWT的两个自定义身份验证API laravel

在WordPress中创建自定义登录功能以进行API身份验证

反正有自定义Django的身份验证功能吗?

.net身份自定义身份验证

Azure Apps自定义身份验证SigningKey