chenweida 7 лет назад
Родитель
Сommit
23ab2d0102

+ 3 - 3
base/common-security/src/main/java/com.yihu.base.security/config/AuthorizationServerConfig.java

@ -69,9 +69,9 @@ public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdap
    @Override
    public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
        clients.jdbc(dataSource)
                .passwordEncoder(passwordEncoder)
                .clients(clientDetailsService)
        //.jdbc(dataSource).passwordEncoder(passwordEncoder) .clients(clientDetailsService)
        clients.withClientDetails(clientDetailsService) ;
        ;
    }

+ 27 - 8
svr/svr-demo/src/main/java/com/yihu/jw/model/SaasDO.java

@ -119,7 +119,7 @@ public class SaasDO implements Serializable, ClientDetails {
    @Override
    public Set<String> getResourceIds() {
        return null;
        return new HashSet<>();
    }
    @Override
@ -127,20 +127,34 @@ public class SaasDO implements Serializable, ClientDetails {
        return false;
    }
    /**
     * 是否在授权范围
     * @return
     */
    @Override
    public boolean isScoped() {
        return false;
    }
    /**
     * 允许的授权范围
     *
     * @return
     */
    @Override
    public Set<String> getScope() {
        return null;
        Set<String> set = new HashSet<>();
        set.add("app");
        return set;
    }
    /**
     * 该client允许的授权类型
     *
     * @return
     */
    @Override
    public Set<String> getAuthorizedGrantTypes() {
        Set<String> strings = new HashSet<>();
        strings.add("password");
        strings.add("custom_password");
@ -149,26 +163,31 @@ public class SaasDO implements Serializable, ClientDetails {
        return strings;
    }
    /**
     * 授权码模式支持的跳转请求
     * @return
     */
    @Override
    public Set<String> getRegisteredRedirectUri() {
        Set<String> strings = new HashSet<>();
        strings.add("http://example.com");
        strings.add(url);
        return strings;
    }
    @Override
    public Collection<GrantedAuthority> getAuthorities() {
        return null;
        return new ArrayList<>();
    }
    @Override
    public Integer getAccessTokenValiditySeconds() {
        return null;
        return 0;
    }
    @Override
    public Integer getRefreshTokenValiditySeconds() {
        return null;
        return 0;
    }
    @Override
@ -178,7 +197,7 @@ public class SaasDO implements Serializable, ClientDetails {
    @Override
    public Map<String, Object> getAdditionalInformation() {
        return null;
        return new HashMap<>();
    }
    public String getCreateUser() {

+ 1 - 13
svr/svr-demo/src/main/java/com/yihu/jw/service/ClientService.java

@ -1,23 +1,10 @@
package com.yihu.jw.service;
import com.yihu.base.security.rbas.ClientServiceProvider;
import com.yihu.jw.dao.SaasDao;
import com.yihu.jw.model.SaasDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.annotation.Order;
import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer;
import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer;
import org.springframework.security.oauth2.provider.ClientDetails;
import org.springframework.security.oauth2.provider.ClientDetailsService;
import org.springframework.security.oauth2.provider.ClientRegistrationException;
import org.springframework.security.oauth2.provider.client.JdbcClientDetailsService;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import javax.sql.DataSource;
import java.util.HashSet;
import java.util.Set;
/**
 * Created by chenweida on 2017/12/1.
@ -37,6 +24,7 @@ public class ClientService implements ClientServiceProvider {
//            throw new ClientRegistrationException("用户没有注册");
//        }
        SaasDO baseClientDetails = new SaasDO();
        baseClientDetails.setAppId("cwd");
        baseClientDetails.setAppSecret("cwd");

+ 3 - 1
web-gateway/src/main/java/com/yihu/jw/config/security/roleService/ClientService.java

@ -1,6 +1,7 @@
package com.yihu.jw.config.security.roleService;
package com.yihu.jw.config.security;
import com.yihu.base.security.rbas.ClientServiceProvider;
import org.springframework.context.annotation.Primary;
import org.springframework.security.oauth2.provider.ClientDetails;
import org.springframework.security.oauth2.provider.ClientRegistrationException;
import org.springframework.security.oauth2.provider.client.BaseClientDetails;
@ -13,6 +14,7 @@ import java.util.Set;
 * Created by chenweida on 2017/12/1.
 */
@Component("baseClientDetailsService")
@Primary
public class ClientService implements ClientServiceProvider {
    @Override

+ 1 - 1
web-gateway/src/main/java/com/yihu/jw/config/security/roleService/RbasService.java

@ -1,4 +1,4 @@
package com.yihu.jw.config.security.roleService;
package com.yihu.jw.config.security;
import com.yihu.base.security.rbas.IRbasService;
import org.springframework.security.core.Authentication;

+ 1 - 1
web-gateway/src/main/java/com/yihu/jw/config/security/roleService/UserService.java

@ -1,4 +1,4 @@
package com.yihu.jw.config.security.roleService;
package com.yihu.jw.config.security;
import org.springframework.beans.factory.annotation.Autowired;

+ 1 - 1
web-gateway/src/main/java/com/yihu/jw/controller/login/LoginController.java

@ -1,6 +1,6 @@
package com.yihu.jw.controller.login;
import com.yihu.jw.config.security.roleService.UserService;
import com.yihu.jw.config.security.UserService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.sleuth.Tracer;