mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-09-24 16:04:36 +08:00
Default auth provider fix
This commit is contained in:
+13
-1
@@ -17,10 +17,14 @@
|
||||
package io.cloudbeaver.model.user;
|
||||
|
||||
import io.cloudbeaver.registry.WebAuthProviderDescriptor;
|
||||
import io.cloudbeaver.registry.WebAuthProviderPropertyDescriptor;
|
||||
import io.cloudbeaver.server.CBPlatform;
|
||||
import org.jkiss.dbeaver.Log;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Web user.
|
||||
* WebAuthProviderInfo.
|
||||
*/
|
||||
public class WebAuthProviderInfo {
|
||||
|
||||
@@ -48,6 +52,14 @@ public class WebAuthProviderInfo {
|
||||
return descriptor.getDescription();
|
||||
}
|
||||
|
||||
public boolean isDefault() {
|
||||
return descriptor.getId().equals(CBPlatform.getInstance().getApplication().getAppConfiguration().getDefaultAuthProvider());
|
||||
}
|
||||
|
||||
public List<WebAuthProviderPropertyDescriptor> getCredentialParameters() {
|
||||
return descriptor.getCredentialParameters();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return getId();
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
*/
|
||||
package io.cloudbeaver.server;
|
||||
|
||||
import io.cloudbeaver.auth.provider.local.LocalAuthProvider;
|
||||
|
||||
/**
|
||||
* Application configuration
|
||||
*/
|
||||
@@ -30,6 +32,7 @@ public class CBAppConfig {
|
||||
private boolean supportsUserWorkspaces = false;
|
||||
private String[] enabledDrivers = new String[0];
|
||||
private String[] disabledDrivers = new String[0];
|
||||
private String defaultAuthProvider = LocalAuthProvider.PROVIDER_ID;
|
||||
|
||||
public boolean isAuthenticationEnabled() {
|
||||
return authenticationEnabled;
|
||||
@@ -70,4 +73,8 @@ public class CBAppConfig {
|
||||
public String[] getDisabledDrivers() {
|
||||
return disabledDrivers;
|
||||
}
|
||||
|
||||
public String getDefaultAuthProvider() {
|
||||
return defaultAuthProvider;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ type AuthProviderInfo {
|
||||
icon: ID
|
||||
description: String
|
||||
|
||||
isDefault: Boolean
|
||||
default: Boolean
|
||||
|
||||
#configurationParameters: [ObjectPropertyInfo]!
|
||||
|
||||
|
||||
+4
@@ -20,6 +20,7 @@ import io.cloudbeaver.DBWService;
|
||||
import io.cloudbeaver.DBWebException;
|
||||
import io.cloudbeaver.WebAction;
|
||||
import io.cloudbeaver.model.session.WebSession;
|
||||
import io.cloudbeaver.model.user.WebAuthProviderInfo;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@@ -36,4 +37,7 @@ public interface DBWServiceAuth extends DBWService {
|
||||
|
||||
@WebAction(requirePermissions = {})
|
||||
WebAuthInfo sessionUser(WebSession webSession) throws DBWebException;
|
||||
|
||||
@WebAction(requirePermissions = {})
|
||||
WebAuthProviderInfo[] getAuthProviders(WebSession webSession);
|
||||
}
|
||||
|
||||
+1
-2
@@ -17,7 +17,6 @@
|
||||
package io.cloudbeaver.service.auth;
|
||||
|
||||
import io.cloudbeaver.DBWebException;
|
||||
import io.cloudbeaver.registry.WebServiceRegistry;
|
||||
import io.cloudbeaver.service.DBWBindingContext;
|
||||
import io.cloudbeaver.service.WebServiceBindingBase;
|
||||
import io.cloudbeaver.service.auth.impl.WebServiceAuthImpl;
|
||||
@@ -45,7 +44,7 @@ public class WebServiceBindingAuth extends WebServiceBindingBase<DBWServiceAuth>
|
||||
return true;
|
||||
})
|
||||
.dataFetcher("sessionUser", env -> getService(env).sessionUser(getWebSession(env)))
|
||||
.dataFetcher("authProviders", env -> WebServiceRegistry.getInstance().getAuthProviders())
|
||||
.dataFetcher("authProviders", env -> getService(env).getAuthProviders(getWebSession(env)))
|
||||
;
|
||||
|
||||
}
|
||||
|
||||
+8
@@ -21,6 +21,7 @@ import io.cloudbeaver.DBWAuthProviderExternal;
|
||||
import io.cloudbeaver.DBWSecurityController;
|
||||
import io.cloudbeaver.DBWebException;
|
||||
import io.cloudbeaver.model.session.WebSession;
|
||||
import io.cloudbeaver.model.user.WebAuthProviderInfo;
|
||||
import io.cloudbeaver.model.user.WebUser;
|
||||
import io.cloudbeaver.registry.WebAuthProviderDescriptor;
|
||||
import io.cloudbeaver.registry.WebServiceRegistry;
|
||||
@@ -126,4 +127,11 @@ public class WebServiceAuthImpl implements DBWServiceAuth {
|
||||
return webSession.getAttribute(ATTR_USER_AUTH);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WebAuthProviderInfo[] getAuthProviders(WebSession webSession) {
|
||||
return WebServiceRegistry.getInstance().getAuthProviders()
|
||||
.stream().map(WebAuthProviderInfo::new)
|
||||
.toArray(WebAuthProviderInfo[]::new);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -34,11 +34,11 @@
|
||||
<setEntry value="org.jkiss.dbeaver.db.feature:default"/>
|
||||
<setEntry value="org.jkiss.dbeaver.runtime.feature:default"/>
|
||||
</setAttribute>
|
||||
<stringAttribute key="selected_target_plugins" value="com.github.jsqlparser@default:default,com.google.gson@default:default,com.google.guava*27.1.0.v20190517-1946@default:default,com.ibm.icu.base@default:default,com.jcraft.jsch@default:default,com.jcraft.jzlib@default:default,com.sun.jna*4.5.1.v20190425-1842@default:default,com.sun.jna.platform*4.5.1.v20190425-1842@default:default,javax.annotation@default:default,javax.inject@default:default,javax.servlet*3.1.0.v201410161800@default:default,javax.xml@default:default,net.sf.opencsv@default:default,org.apache.batik.constants@default:default,org.apache.batik.css@default:default,org.apache.batik.i18n@default:default,org.apache.batik.util@default:default,org.apache.commons.io@default:default,org.apache.commons.jexl@default:default,org.apache.commons.jxpath@default:default,org.apache.commons.logging@default:default,org.apache.felix.gogo.runtime@default:default,org.apache.felix.scr@1:true,org.apache.log4j@default:default,org.apache.lucene.analyzers-common*8.0.0.v20190404-1858@default:default,org.apache.lucene.analyzers-smartcn@default:default,org.apache.lucene.core*8.0.0.v20190404-1858@default:default,org.apache.xerces@default:default,org.apache.xml.resolver@default:default,org.apache.xml.serializer@default:default,org.apache.xmlgraphics@default:default,org.bouncycastle.bcpkix@default:default,org.bouncycastle.bcprov@default:default,org.eclipse.ant.core@default:default,org.eclipse.compare.core@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86_64@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86_64@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86_64@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.annotations@default:default,org.eclipse.e4.core.di.extensions.supplier@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.emf.xpath@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.bidi@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.win32.x86_64@default:false,org.eclipse.equinox.security@default:default,org.eclipse.jdt.annotation*2.2.300.v20190328-1431@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.osgi.compatibility.state@default:false,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.team.core@default:default,org.eclipse.text@default:default,org.jkiss.bundle.apache.dbcp@default:default,org.jkiss.bundle.aws@default:default,org.jkiss.bundle.gis@default:default,org.jkiss.bundle.graphql.java@default:default,org.jkiss.bundle.sshj@default:default,org.objectweb.asm*7.1.0.v20190412-2143@default:default,org.slf4j.api*1.7.10.v20170428-1633@default:default,org.tukaani.xz@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil@default:default,org.w3c.dom.svg@default:default,stax.api@default:default"/>
|
||||
<stringAttribute key="selected_workspace_plugins" value="com.dbeaver.db.sqlite.crypt@default:default,io.cloudbeaver.connect.provider.sample@default:default,io.cloudbeaver.resources.drivers.base@default:default,io.cloudbeaver.resources.drivers.ee@default:default,io.cloudbeaver.server@default:default,io.cloudbeaver.service.admin@default:default,io.cloudbeaver.service.auth.aws@default:default,io.cloudbeaver.service.auth@default:default,io.cloudbeaver.service.data.transfer@default:default,io.cloudbeaver.service.metadata@default:default,org.jkiss.dbeaver.cmp.simple@default:default,org.jkiss.dbeaver.data.gis@default:default,org.jkiss.dbeaver.data.transfer@default:default,org.jkiss.dbeaver.ext.clickhouse@default:default,org.jkiss.dbeaver.ext.db2.i@default:default,org.jkiss.dbeaver.ext.db2.zos@default:default,org.jkiss.dbeaver.ext.derby@default:default,org.jkiss.dbeaver.ext.firebird@default:default,org.jkiss.dbeaver.ext.generic@default:default,org.jkiss.dbeaver.ext.greenplum@default:default,org.jkiss.dbeaver.ext.h2@default:default,org.jkiss.dbeaver.ext.h2gis@default:default,org.jkiss.dbeaver.ext.hana@default:default,org.jkiss.dbeaver.ext.hive@default:default,org.jkiss.dbeaver.ext.hsqldb@default:default,org.jkiss.dbeaver.ext.informix@default:default,org.jkiss.dbeaver.ext.kognitio@default:default,org.jkiss.dbeaver.ext.mssql@default:default,org.jkiss.dbeaver.ext.mysql@default:default,org.jkiss.dbeaver.ext.netezza@default:default,org.jkiss.dbeaver.ext.opendistro@default:default,org.jkiss.dbeaver.ext.oracle@default:default,org.jkiss.dbeaver.ext.phoenix@default:default,org.jkiss.dbeaver.ext.postgresql@default:default,org.jkiss.dbeaver.ext.snowflake.core@default:default,org.jkiss.dbeaver.ext.sqlite@default:default,org.jkiss.dbeaver.ext.teradata@default:default,org.jkiss.dbeaver.ext.vertica@default:default,org.jkiss.dbeaver.model.sql@default:default,org.jkiss.dbeaver.model@default:default,org.jkiss.dbeaver.net.ssh.sshj@default:default,org.jkiss.dbeaver.net.ssh@default:default,org.jkiss.dbeaver.registry@default:default,org.jkiss.dbeaver.slf4j@default:false,org.jkiss.dbeaver.tasks.native@default:default,org.jkiss.utils@default:default,org.jkiss.wmi@default:default"/>
|
||||
<stringAttribute key="selected_target_plugins" value="com.github.jsqlparser@default:default,com.google.gson@default:default,com.google.guava*27.1.0.v20190517-1946@default:default,com.ibm.icu.base@default:default,com.jcraft.jsch@default:default,com.jcraft.jzlib@default:default,com.sun.jna*4.5.1.v20190425-1842@default:default,com.sun.jna.platform*4.5.1.v20190425-1842@default:default,javax.annotation@default:default,javax.inject@default:default,javax.servlet*3.1.0.v201410161800@default:default,javax.xml@default:default,net.sf.opencsv@default:default,org.apache.batik.constants@default:default,org.apache.batik.css@default:default,org.apache.batik.i18n@default:default,org.apache.batik.util@default:default,org.apache.commons.io@default:default,org.apache.commons.jexl@default:default,org.apache.commons.jxpath@default:default,org.apache.commons.logging@default:default,org.apache.felix.gogo.runtime@default:default,org.apache.felix.scr@1:true,org.apache.log4j@default:default,org.apache.xerces@default:default,org.apache.xml.resolver@default:default,org.apache.xml.serializer@default:default,org.apache.xmlgraphics@default:default,org.bouncycastle.bcpkix@default:default,org.bouncycastle.bcprov@default:default,org.eclipse.ant.core@default:default,org.eclipse.compare.core@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86_64@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86_64@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86_64@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.annotations@default:default,org.eclipse.e4.core.di.extensions.supplier@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.emf.xpath@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.bidi@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.win32.x86_64@default:false,org.eclipse.equinox.security@default:default,org.eclipse.jdt.annotation*2.2.300.v20190328-1431@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.osgi.compatibility.state@default:false,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.team.core@default:default,org.eclipse.text@default:default,org.jkiss.bundle.apache.dbcp@default:default,org.jkiss.bundle.apache.poi@default:default,org.jkiss.bundle.aws@default:default,org.jkiss.bundle.gis@default:default,org.jkiss.bundle.google.cloud@default:default,org.jkiss.bundle.graphql.java@default:default,org.jkiss.bundle.influxdb@default:default,org.jkiss.bundle.jaxb@default:default,org.jkiss.bundle.jedis@default:default,org.jkiss.bundle.sshj@default:default,org.objectweb.asm*7.1.0.v20190412-2143@default:default,org.slf4j.api*1.7.10.v20170428-1633@default:default,org.tukaani.xz@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil@default:default,org.w3c.dom.svg@default:default,stax.api@default:default"/>
|
||||
<stringAttribute key="selected_workspace_plugins" value="com.dbeaver.db.sqlite.crypt@default:default,com.dbeaver.resources.clients.mysql.win32@default:default,com.dbeaver.resources.clients.postgresql.win32@default:default,com.dbeaver.resources.drivers.jdbc@default:default,io.cloudbeaver.connect.provider.sample@default:default,io.cloudbeaver.product.ce@default:default,io.cloudbeaver.resources.drivers.base@default:default,io.cloudbeaver.resources.drivers.ee@default:default,io.cloudbeaver.server@default:default,io.cloudbeaver.service.admin@default:default,io.cloudbeaver.service.auth.aws@default:default,io.cloudbeaver.service.auth@default:default,io.cloudbeaver.service.data.transfer@default:default,io.cloudbeaver.service.metadata@default:default,org.jkiss.dbeaver.cmp.simple@default:default,org.jkiss.dbeaver.data.gis@default:default,org.jkiss.dbeaver.data.office@default:default,org.jkiss.dbeaver.data.transfer@default:default,org.jkiss.dbeaver.ext.clickhouse@default:default,org.jkiss.dbeaver.ext.db2.i@default:default,org.jkiss.dbeaver.ext.db2.zos@default:default,org.jkiss.dbeaver.ext.derby@default:default,org.jkiss.dbeaver.ext.firebird@default:default,org.jkiss.dbeaver.ext.generic@default:default,org.jkiss.dbeaver.ext.greenplum@default:default,org.jkiss.dbeaver.ext.h2@default:default,org.jkiss.dbeaver.ext.h2gis@default:default,org.jkiss.dbeaver.ext.hana@default:default,org.jkiss.dbeaver.ext.hive@default:default,org.jkiss.dbeaver.ext.hsqldb@default:default,org.jkiss.dbeaver.ext.informix@default:default,org.jkiss.dbeaver.ext.kognitio@default:default,org.jkiss.dbeaver.ext.mssql@default:default,org.jkiss.dbeaver.ext.mysql@default:default,org.jkiss.dbeaver.ext.netezza@default:default,org.jkiss.dbeaver.ext.opendistro@default:default,org.jkiss.dbeaver.ext.oracle@default:default,org.jkiss.dbeaver.ext.phoenix@default:default,org.jkiss.dbeaver.ext.postgresql@default:default,org.jkiss.dbeaver.ext.snowflake.core@default:default,org.jkiss.dbeaver.ext.sqlite@default:default,org.jkiss.dbeaver.ext.teradata@default:default,org.jkiss.dbeaver.ext.vertica@default:default,org.jkiss.dbeaver.model.sql@default:default,org.jkiss.dbeaver.model@default:default,org.jkiss.dbeaver.net.ssh.sshj@default:default,org.jkiss.dbeaver.net.ssh@default:default,org.jkiss.dbeaver.registry@default:default,org.jkiss.dbeaver.slf4j@default:false,org.jkiss.dbeaver.tasks.native@default:default,org.jkiss.utils@default:default,org.jkiss.wmi@default:default"/>
|
||||
<booleanAttribute key="show_selected_only" value="false"/>
|
||||
<booleanAttribute key="tracing" value="false"/>
|
||||
<booleanAttribute key="useCustomFeatures" value="true"/>
|
||||
<booleanAttribute key="useCustomFeatures" value="false"/>
|
||||
<booleanAttribute key="useDefaultConfig" value="true"/>
|
||||
<booleanAttribute key="useDefaultConfigArea" value="true"/>
|
||||
<booleanAttribute key="useProduct" value="true"/>
|
||||
|
||||
Reference in New Issue
Block a user