All Downloads are FREE. Search and download functionalities are using the official Maven repository.

club.zhcs.lina.starter.oidc.OpenIDConnectConfigurationProperties Maven / Gradle / Ivy

There is a newer version: 3.3.4
Show newest version
package club.zhcs.lina.starter.oidc;

import club.zhcs.lina.auth.service.CookieSettings;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

import java.net.URI;

/**
 *
 */
@Data
@ConfigurationProperties("lina.oidc")
public class OpenIDConnectConfigurationProperties {

    /**
     * 启用
     */
    boolean enabled = false;
    /**
     * OIDC 发现地址
     */
    private String discoveryUrl;
    /**
     * 客户端ID
     */
    private String clientId;
    /**
     * 客户端秘钥
     */
    private String clientSecret;

    /**
     * 回调地址前缀
     */
    private String callbackPrefix;

    /**
     * cookie 设置
     */
    private CookieSettings cookieSettings;
    /**
     * 回调成功显示页面地址
     */
    private String hanlderSuccessPage;
    /**
     * 回调处理器类型
     */
    private Type callbackHanlderType = Type.REDIRECT;

    public enum Type {
        COOKIE, REDIRECT
    }

    public String iam() {
        URI uri = URI.create(discoveryUrl);
        return String.format("%s://%s", uri.getScheme(), uri.getHost());
    }

    /**
     * @return
     */
    public String getRedirectUrl() {
        return String.format("%s/oauth2/oidc/callback", callbackPrefix);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy