From a4e306a965dd92c79a8f90297121b813915dcb19 Mon Sep 17 00:00:00 2001
From: houzhongjian <houzhongyi@126.com>
Date: 星期五, 14 三月 2025 15:25:55 +0800
Subject: [PATCH] 增加OAUTH2 客户端模式授权

---
 iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/service/oauth2/OAuth2GrantServiceImpl.java |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/service/oauth2/OAuth2GrantServiceImpl.java b/iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/service/oauth2/OAuth2GrantServiceImpl.java
index d1b9f5b..db703d9 100644
--- a/iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/service/oauth2/OAuth2GrantServiceImpl.java
+++ b/iailab-module-system/iailab-module-system-biz/src/main/java/com/iailab/module/system/service/oauth2/OAuth2GrantServiceImpl.java
@@ -85,9 +85,10 @@
     }
 
     @Override
-    public OAuth2AccessTokenDO grantClientCredentials(String clientId, List<String> scopes) {
-        // TODO iailab:项目中使用 OAuth2 解决的是三方应用的授权,内部的 SSO 等问题,所以暂时不考虑 client_credentials 这个场景
-        throw new UnsupportedOperationException("暂时不支持 client_credentials 授权模式");
+    public OAuth2AccessTokenDO grantClientCredentials(String username, String clientId, List<String> scopes) {
+        AdminUserDO tenantUser = adminAuthService.getTenantUser(username);
+        // 创建访问令牌
+        return oauth2TokenService.createAccessToken(tenantUser.getId(), UserTypeEnum.ADMIN.getValue(), clientId, scopes);
     }
 
     @Override

--
Gitblit v1.9.3