From c7d12e661deb5e47de10bc19e983f9f67381d7e1 Mon Sep 17 00:00:00 2001 From: TotaJ Date: Wed, 2 Mar 2022 16:54:40 +0800 Subject: [PATCH] Force subscription use HA port. --- src/gausskernel/process/postmaster/postmaster.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gausskernel/process/postmaster/postmaster.cpp b/src/gausskernel/process/postmaster/postmaster.cpp index f875e5a34..c1c35a4af 100644 --- a/src/gausskernel/process/postmaster/postmaster.cpp +++ b/src/gausskernel/process/postmaster/postmaster.cpp @@ -3805,6 +3805,13 @@ int ProcessStartupPacket(Port* port, bool SSLdone) port->guc_options = NIL; } + /* subscription is allowed to use HA port only, the auth check also done in HA port */ + if (u_sess->proc_cxt.clientIsSubscription && !IsHAPort(u_sess->proc_cxt.MyProcPort)) { + ereport(elevel, + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("subcription should connect HA port"))); + } + /* Inner tool with local sha256 will not be authenicated. */ if (clientIsCmAgent || clientIsGsClean || clientIsOM || u_sess->proc_cxt.clientIsGsroach || clientIsWDRXdb || clientIsRemoteRead || u_sess->proc_cxt.clientIsGsCtl || u_sess->proc_cxt.clientIsGsrewind ||