Skip to content

Commit b65c79a

Browse files
committed
Refine generic SSL protocol configuration
1 parent ed1a71e commit b65c79a

38 files changed

Lines changed: 103 additions & 398 deletions

File tree

dependencies.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,16 @@
6666
"io.netty:netty-transport-native-kqueue",
6767
"io.netty:netty-transport-native-kqueue",
6868
"io.netty:netty-transport-native-unix-common",
69+
"io.opentelemetry:opentelemetry-api",
70+
"io.opentelemetry:opentelemetry-common",
71+
"io.opentelemetry:opentelemetry-context",
72+
"io.opentelemetry:opentelemetry-sdk",
73+
"io.opentelemetry:opentelemetry-sdk-common",
74+
"io.opentelemetry:opentelemetry-sdk-logs",
75+
"io.opentelemetry:opentelemetry-sdk-metrics",
76+
"io.opentelemetry:opentelemetry-sdk-testing",
77+
"io.opentelemetry:opentelemetry-sdk-trace",
78+
"io.opentelemetry.semconv:opentelemetry-semconv",
6979
"io.projectreactor:reactor-core",
7080
"io.projectreactor.netty:reactor-netty-core",
7181
"io.projectreactor.netty:reactor-netty-http",

external-service-impl/rest/src/main/java/org/apache/iotdb/rest/RestService.java

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ private void startSSL(
5454
String keyStorePwd,
5555
String trustStorePwd,
5656
String sslProtocol,
57-
String sslProviderClass,
5857
int idleTime,
5958
boolean clientAuth) {
6059
server = new Server();
@@ -64,7 +63,7 @@ private void startSSL(
6463
httpsConfig.addCustomizer(new SecureRequestCustomizer());
6564

6665
SslContextFactory.Server sslContextFactory = new SslContextFactory.Server();
67-
configureSSL(sslContextFactory, sslProtocol, sslProviderClass);
66+
configureSSL(sslContextFactory, sslProtocol);
6867
sslContextFactory.setKeyStorePath(keyStorePath);
6968
sslContextFactory.setKeyStorePassword(keyStorePwd);
7069
if (clientAuth) {
@@ -130,7 +129,6 @@ public void start() {
130129
config.getKeyStorePwd(),
131130
config.getTrustStorePwd(),
132131
config.getSslProtocol(),
133-
config.getSslProviderClass(),
134132
config.getIdleTimeoutInSeconds(),
135133
config.isClientAuth());
136134
} else {
@@ -149,21 +147,11 @@ public void stop() {
149147
}
150148
}
151149

152-
private void configureSSL(
153-
SslContextFactory.Server sslContextFactory, String sslProtocol, String sslProviderClass) {
154-
String protocol = trimToEmpty(sslProtocol);
155-
try {
156-
RpcSslUtils.ensureProvider(protocol, sslProviderClass);
157-
} catch (Exception e) {
158-
throw new IllegalArgumentException("Failed to initialize SSL provider for REST service", e);
159-
}
160-
if (!protocol.isEmpty()) {
161-
sslContextFactory.setProtocol(protocol);
150+
private void configureSSL(SslContextFactory.Server sslContextFactory, String sslProtocol) {
151+
String protocol = RpcSslUtils.normalizeStandardTlsProtocol(sslProtocol);
152+
sslContextFactory.setProtocol(protocol);
153+
if (RpcSslUtils.isSpecificProtocol(protocol)) {
162154
sslContextFactory.setIncludeProtocols(protocol);
163155
}
164156
}
165-
166-
private String trimToEmpty(String value) {
167-
return value == null ? "" : value.trim();
168-
}
169157
}

iotdb-client/cli/src/main/java/org/apache/iotdb/cli/AbstractCli.java

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -79,16 +79,13 @@ public abstract class AbstractCli {
7979

8080
static final String SSL_PROTOCOL_ARGS = "ssl_protocol";
8181

82-
static final String SSL_PROVIDER_CLASS_ARGS = "ssl_provider_class";
83-
8482
private static final String EXECUTE_NAME = "execute";
8583

8684
private static final String USE_SSL = "use_ssl";
8785
private static final String TRUST_STORE = "trust_store";
8886

8987
private static final String TRUST_STORE_PWD = "trust_store_pwd";
9088
private static final String SSL_PROTOCOL = "ssl_protocol";
91-
private static final String SSL_PROVIDER_CLASS = "ssl_provider_class";
9289
private static final String NULL = "null";
9390

9491
static final int CODE_OK = 0;
@@ -140,8 +137,6 @@ public abstract class AbstractCli {
140137
static String trustStorePwd;
141138
// TODO: Make non-static
142139
static String sslProtocol;
143-
// TODO: Make non-static
144-
static String sslProviderClass;
145140

146141
static String execute;
147142
static boolean hasExecuteSQL = false;
@@ -168,8 +163,6 @@ static void init() {
168163
keywordSet.add("-" + TRUST_STORE_PWD_ARGS);
169164
keywordSet.add("-" + SSL_PROTOCOL_ARGS);
170165
keywordSet.add("--" + SSL_PROTOCOL_ARGS);
171-
keywordSet.add("-" + SSL_PROVIDER_CLASS_ARGS);
172-
keywordSet.add("--" + SSL_PROVIDER_CLASS_ARGS);
173166
keywordSet.add("-" + EXECUTE_ARGS);
174167
keywordSet.add("-" + ISO8601_ARGS);
175168
keywordSet.add("-" + RPC_COMPRESS_ARGS);
@@ -237,15 +230,6 @@ static Options createOptions() {
237230
.build();
238231
options.addOption(sslProtocol);
239232

240-
Option sslProviderClass =
241-
Option.builder(SSL_PROVIDER_CLASS_ARGS)
242-
.longOpt(SSL_PROVIDER_CLASS)
243-
.argName(SSL_PROVIDER_CLASS)
244-
.hasArg()
245-
.desc("JSSE provider class for SSL. (optional)")
246-
.build();
247-
options.addOption(sslProviderClass);
248-
249233
Option execute =
250234
Option.builder(EXECUTE_ARGS)
251235
.argName(EXECUTE_NAME)

iotdb-client/cli/src/main/java/org/apache/iotdb/cli/Cli.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,9 +114,6 @@ private static void constructProperties() {
114114
if (sslProtocol != null) {
115115
info.setProperty(Config.SSL_PROTOCOL, sslProtocol);
116116
}
117-
if (sslProviderClass != null) {
118-
info.setProperty(Config.SSL_PROVIDER_CLASS, sslProviderClass);
119-
}
120117
}
121118
info.setProperty("user", username);
122119
info.setProperty("password", password);
@@ -166,7 +163,6 @@ private static void serve(CliContext ctx) {
166163
try {
167164
useSsl = commandLine.getOptionValue(USE_SSL_ARGS);
168165
sslProtocol = commandLine.getOptionValue(SSL_PROTOCOL_ARGS);
169-
sslProviderClass = commandLine.getOptionValue(SSL_PROVIDER_CLASS_ARGS);
170166
if (Boolean.parseBoolean(useSsl)) {
171167
trustStore = ctx.getLineReader().readLine("please input your trust_store:", '\0');
172168
trustStorePwd = ctx.getLineReader().readLine("please input your trust_store_pwd:", '\0');

iotdb-client/cli/src/main/java/org/apache/iotdb/tool/common/Constants.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,6 @@ public class Constants {
7272
public static final String SSL_PROTOCOL_NAME = "ssl_protocol";
7373
public static final String SSL_PROTOCOL_DESC = "SSL protocol. (optional)";
7474

75-
public static final String SSL_PROVIDER_CLASS_ARGS = "ssl_provider_class";
76-
public static final String SSL_PROVIDER_CLASS_NAME = "ssl_provider_class";
77-
public static final String SSL_PROVIDER_CLASS_DESC = "JSSE provider class for SSL. (optional)";
78-
7975
public static final String FILE_TYPE_ARGS = "ft";
8076
public static final String FILE_TYPE_NAME = "file_type";
8177
public static final String FILE_TYPE_ARGS_NAME = "format";

iotdb-client/cli/src/main/java/org/apache/iotdb/tool/common/OptionsUtil.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -143,16 +143,6 @@ public static Options createCommonOptions(Options options) {
143143
.build();
144144
options.addOption(opSslProtocol);
145145

146-
Option opSslProviderClass =
147-
Option.builder(SSL_PROVIDER_CLASS_ARGS)
148-
.longOpt(SSL_PROVIDER_CLASS_NAME)
149-
.optionalArg(true)
150-
.argName(SSL_PROVIDER_CLASS_NAME)
151-
.hasArg()
152-
.desc(SSL_PROVIDER_CLASS_DESC)
153-
.build();
154-
options.addOption(opSslProviderClass);
155-
156146
return options;
157147
}
158148

iotdb-client/cli/src/main/java/org/apache/iotdb/tool/data/AbstractDataTool.java

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ public abstract class AbstractDataTool {
9898
protected static String trustStore;
9999
protected static String trustStorePwd;
100100
protected static String sslProtocol;
101-
protected static String sslProviderClass;
102101
protected static Boolean aligned;
103102
protected static String database;
104103
protected static String startTime;
@@ -144,9 +143,6 @@ protected static Session.Builder configureSsl(Session.Builder builder) {
144143
if (sslProtocol != null) {
145144
builder.sslProtocol(sslProtocol);
146145
}
147-
if (sslProviderClass != null) {
148-
builder.sslProviderClass(sslProviderClass);
149-
}
150146
return builder;
151147
}
152148

@@ -155,9 +151,6 @@ protected static SessionPool.Builder configureSsl(SessionPool.Builder builder) {
155151
if (sslProtocol != null) {
156152
builder.sslProtocol(sslProtocol);
157153
}
158-
if (sslProviderClass != null) {
159-
builder.sslProviderClass(sslProviderClass);
160-
}
161154
return builder;
162155
}
163156

@@ -166,9 +159,6 @@ protected static TableSessionBuilder configureSsl(TableSessionBuilder builder) {
166159
if (sslProtocol != null) {
167160
builder.sslProtocol(sslProtocol);
168161
}
169-
if (sslProviderClass != null) {
170-
builder.sslProviderClass(sslProviderClass);
171-
}
172162
return builder;
173163
}
174164

@@ -177,9 +167,6 @@ protected static TableSessionPoolBuilder configureSsl(TableSessionPoolBuilder bu
177167
if (sslProtocol != null) {
178168
builder.sslProtocol(sslProtocol);
179169
}
180-
if (sslProviderClass != null) {
181-
builder.sslProviderClass(sslProviderClass);
182-
}
183170
return builder;
184171
}
185172

@@ -220,7 +207,6 @@ protected static void parseBasicParams(CommandLine commandLine)
220207
useSsl = Boolean.parseBoolean(useSslStr);
221208
if (useSsl) {
222209
sslProtocol = commandLine.getOptionValue(Constants.SSL_PROTOCOL_ARGS);
223-
sslProviderClass = commandLine.getOptionValue(Constants.SSL_PROVIDER_CLASS_ARGS);
224210
String givenTS = commandLine.getOptionValue(Constants.TRUST_STORE_ARGS);
225211
if (givenTS != null) {
226212
trustStore = givenTS;

iotdb-client/cli/src/main/java/org/apache/iotdb/tool/schema/AbstractSchemaTool.java

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ public abstract class AbstractSchemaTool {
5656
protected static String trustStore;
5757
protected static String trustStorePwd;
5858
protected static String sslProtocol;
59-
protected static String sslProviderClass;
6059
protected static Session session;
6160
protected static String queryPath;
6261
protected static int threadNum = 8;
@@ -82,9 +81,6 @@ protected static Session.Builder configureSsl(Session.Builder builder) {
8281
if (sslProtocol != null) {
8382
builder.sslProtocol(sslProtocol);
8483
}
85-
if (sslProviderClass != null) {
86-
builder.sslProviderClass(sslProviderClass);
87-
}
8884
return builder;
8985
}
9086

@@ -93,9 +89,6 @@ protected static SessionPool.Builder configureSsl(SessionPool.Builder builder) {
9389
if (sslProtocol != null) {
9490
builder.sslProtocol(sslProtocol);
9591
}
96-
if (sslProviderClass != null) {
97-
builder.sslProviderClass(sslProviderClass);
98-
}
9992
return builder;
10093
}
10194

@@ -104,9 +97,6 @@ protected static TableSessionPoolBuilder configureSsl(TableSessionPoolBuilder bu
10497
if (sslProtocol != null) {
10598
builder.sslProtocol(sslProtocol);
10699
}
107-
if (sslProviderClass != null) {
108-
builder.sslProviderClass(sslProviderClass);
109-
}
110100
return builder;
111101
}
112102

@@ -145,7 +135,6 @@ protected static void parseBasicParams(CommandLine commandLine)
145135
useSsl = Boolean.parseBoolean(useSslStr);
146136
if (useSsl) {
147137
sslProtocol = commandLine.getOptionValue(Constants.SSL_PROTOCOL_ARGS);
148-
sslProviderClass = commandLine.getOptionValue(Constants.SSL_PROVIDER_CLASS_ARGS);
149138
String givenTS = commandLine.getOptionValue(Constants.TRUST_STORE_ARGS);
150139
if (givenTS != null) {
151140
trustStore = givenTS;

iotdb-client/isession/src/main/java/org/apache/iotdb/isession/SessionConfig.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,5 @@ public class SessionConfig {
5858

5959
public static final String DEFAULT_SSL_PROTOCOL = "TLS";
6060

61-
public static final String DEFAULT_SSL_PROVIDER_CLASS = "";
62-
6361
private SessionConfig() {}
6462
}

iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/Config.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,8 @@ private Config() {
8484

8585
public static final String SSL_PROTOCOL = "ssl_protocol";
8686

87-
public static final String SSL_PROVIDER_CLASS = "ssl_provider_class";
88-
8987
static final String DEFAULT_SSL_PROTOCOL = "TLS";
9088

91-
static final String DEFAULT_SSL_PROVIDER_CLASS = "";
92-
9389
public static final String SQL_DIALECT = "sql_dialect";
9490

9591
public static final String DATABASE = "db";

0 commit comments

Comments
 (0)