前言
Authentik作为一个统一的身份认证提供商,能够让用户只需要一个密码,便能访问相关所有的网站以及应用。而newapi作为一个方便的大模型统一网关,如果能够配置为用户能通过authentik进行Oauth登录,能给大家省下很多事情
操作过程
首先在Authentik中新建一个应用,这里就长话短说,在管理员面板后,点击左侧的Applications(应用)=》Applications,点击以提供程序创建,创建流程中当在“选择提供程序“这个阶段的时候,请选择Oauth2/OpenIDprovider,如下图。创建的时候记得考备出来客户端ID以及客户端Secret

获取完上述信息之后,我们前往newapi的网页,在管理员账号下面,选择左侧栏中的系统设置,在右侧界面进入设置界面后,再次点击系统设置(注意,这里的系统设置是在上面页签处!如下图!)

找到后请找OIDC模块,如下图,将刚刚的客户端ID写到Client ID板块 以及,客户端秘钥写到Client Secret中。假设你的Authentik实例域名是https://Auth.example.com。
那么NewAPI模块中的Authorization Endpoint设置为https://Auth.example.com/application/o/authorize/
token Endpoint设置为https://Auth.example.com/application/o/token/
User Info Endpoint设置为https://Auth.example.com/application/o/userinfo/

设置完后点击保存OIDC设置,刷新后即可使用Oauth登录newapi了。
要注意的一些事情
NewAPI有时候会有点点小的Bug,就是在OIDC登录过程中,会莫名其妙的显示账号被封禁(实际上没有),此时只需要刷新页面,清空浏览器缓存即可解决这个问题~