我如何改变GitLab accessToken时间过期?



我使用NextAuth登录与gitlab,但每2小时我的accessToken变化,我怎么能保持它很长一段时间,从而在我的数据库中注册。注意:我正在创建一个服务来列出所有客户端存储库。

import NextAuth from 'next-auth/next';
import GitLabProvider from 'next-auth/providers/gitlab';
import axios from 'axios';
export default NextAuth({
providers: [
GitLabProvider({
clientId: process.env.CLIENT_ID,
clientSecret: process.env.CLIENT_SECRET,
authorization: { params: { scope: 'api' } },
}),
],
callbacks: {
session: async (session, user) => {
if (!session.accessToken) {
return session;
}
return session;
},
jwt: async ({
token, user, account,
}) => {
if (user) {
token.id = user.id;
}
if (account) {
token.accessToken = account.access_token;
}
return token;
},
},
secret: process.env.SECRET,
});

检查GitLab 16.0 (May 2023)是否可以提供帮助:

令牌旋转API

以前,要旋转令牌,令牌所有者必须手动创建新令牌并替换现有令牌。

现在,令牌所有者可以使用:rotateAPI端点以编程方式旋转个人,组和项目访问令牌。

请参阅文档和问题。

最新更新