product-is
product-is copied to clipboard
Unable to Update Google Connector after Configuring Outbound Provisioning for Google
Describe the issue:
This is Postgres specific issue Encountering an issue where I'm unable to update the Google connector after configuring outbound provisioning settings for Google in WSO2 Identity Server.
Note : problem with inserting a value into the database table IDP_PROV_CONFIG_PROPERTY. Specifically, the value being inserted into the column PROPERTY_VALUE is too long for the type character varying(2048).
How to reproduce:
Select Google Connector: Choose the "Google" connector from the list of available connectors./ Create a new Google connection Go to outbound provisioning Tab and enter the following details to configure the Google outbound connector.
Fill in Configuration Details:
- Enter the name of the Google domain used to provision users
- Provide the Claim URI that will be used to retrieve the primary email address of the created account
- Enter the Claim URI used to retrieve the given name attribute of the user
- Provide the Claim URI used to retrieve the family name attribute of the user.
- Specify the email used for authentication
- Browse and attach the private key from your local machine. This is the PKCS12 private key generated during service account creation.
- Enter the email of the administrator who owns the service account in the specified Google Domain.
- Provide a name for your application to identify requests made by the Google client.
- Define the pattern used by WSO2 Identity Server to build the user ID of the provisioned user account (e.g., {UD,UN,TD,IDP}).
- Specify the separator used to separate provisioning pattern attributes of the user ID (e.g., -(hyphen)).
- Save Configuration:
- Attempt to update the Google connector.
Expected behavior: The Google connector should be updated successfully after configuring outbound provisioning settings for Google.
Environment information (Please complete the following information; remove any unnecessary fields) :
- Product Version:wso2is-7.0.0-rc3
- OS: Mac
- Database: Postgres
- Userstore: JDBC
[ec64f38c-c717-4ad9-833a-0fd59d1a9515] ERROR {org.wso2.carbon.identity.api.server.idp.v1.core.ServerIdpManagementService} - errorCode: IDP-65033 | message: Error occurred while updating Identity Provider information for tenant -1234 org.wso2.carbon.idp.mgt.IdentityProviderManagementException: Error occurred while updating Identity Provider information for tenant -1234
at org.wso2.carbon.idp.mgt.dao.IdPManagementDAO.updateIdPWithResourceId(IdPManagementDAO.java:4218)
at org.wso2.carbon.idp.mgt.dao.CacheBackedIdPMgtDAO.updateIdP(CacheBackedIdPMgtDAO.java:604)
at org.wso2.carbon.idp.mgt.IdentityProviderManager.updateIDP(IdentityProviderManager.java:1882)
at org.wso2.carbon.idp.mgt.IdentityProviderManager.updateIdPByResourceId(IdentityProviderManager.java:1857)
at org.wso2.carbon.identity.api.server.idp.v1.core.ServerIdpManagementService.updateFederatedAuthenticator(ServerIdpManagementService.java:738)
at org.wso2.carbon.identity.api.server.idp.v1.impl.IdentityProvidersApiServiceImpl.updateFederatedAuthenticator(IdentityProvidersApiServiceImpl.java:262)
at org.wso2.carbon.identity.api.server.idp.v1.IdentityProvidersApi.updateFederatedAuthenticator(IdentityProvidersApi.java:770)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179)
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:201)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:104)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:265)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:225)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:304)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPut(AbstractHTTPServlet.java:234)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:558)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:279)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:661)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:425)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:357)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:294)
at org.wso2.carbon.identity.context.rewrite.valve.TenantContextRewriteValve.invoke(TenantContextRewriteValve.java:147)
at org.wso2.carbon.identity.context.rewrite.valve.OrganizationContextRewriteValve.invoke(OrganizationContextRewriteValve.java:123)
at org.wso2.carbon.tomcat.ext.valves.SameSiteCookieValve.invoke(SameSiteCookieValve.java:38)
at org.wso2.carbon.identity.cors.valve.CORSValve.invoke(CORSValve.java:83)
at org.wso2.carbon.identity.authz.valve.AuthorizationValve.invoke(AuthorizationValve.java:183)
at org.wso2.carbon.identity.auth.valve.AuthenticationValve.invoke(AuthenticationValve.java:144)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:110)
at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:49)
at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:71)
at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:152)
at org.wso2.carbon.extension.identity.x509Certificate.valve.X509CertificateAuthenticationValve.invoke(X509CertificateAuthenticationValve.java:59)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:670)
at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:63)
at org.wso2.carbon.tomcat.ext.valves.RequestEncodingValve.invoke(RequestEncodingValve.java:49)
at org.wso2.carbon.tomcat.ext.valves.RequestCorrelationIdValve.invoke(RequestCorrelationIdValve.java:137)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.sql.BatchUpdateException: Batch entry 1 INSERT INTO IDP_PROV_CONFIG_PROPERTY (TENANT_ID, PROVISIONING_CONFIG_ID, PROPERTY_KEY, PROPERTY_VALUE, PROPERTY_BLOB_VALUE, PROPERTY_TYPE, IS_SECRET) VALUES (-1234, 20, 'google_prov_private_key', '<Private Key_Value>', ?, 'STRING', '0') was aborted: ERROR: value too long for type character varying(2048) Call getNextException to see other errors in the batch.
at org.postgresql.jdbc.BatchResultHandler.handleError(BatchResultHandler.java:170)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2401)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:573)
at org.postgresql.jdbc.PgStatement.internalExecuteBatch(PgStatement.java:905)
at org.postgresql.jdbc.PgStatement.executeBatch(PgStatement.java:928)
at org.postgresql.jdbc.PgPreparedStatement.executeBatch(PgPreparedStatement.java:1685)
at jdk.internal.reflect.GeneratedMethodAccessor73.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.apache.tomcat.jdbc.pool.StatementFacade$StatementProxy.invoke(StatementFacade.java:118)
at com.sun.proxy.$Proxy54.executeBatch(Unknown Source)
at org.wso2.carbon.idp.mgt.dao.IdPManagementDAO.addProvisioningConnectorConfigs(IdPManagementDAO.java:1889)
at org.wso2.carbon.idp.mgt.dao.IdPManagementDAO.updateProvisioningConnectorConfigs(IdPManagementDAO.java:1936)
at org.wso2.carbon.idp.mgt.dao.IdPManagementDAO.updateIdPWithResourceId(IdPManagementDAO.java:4180)
... 62 more
Caused by: org.postgresql.util.PSQLException: ERROR: value too long for type character varying(2048)
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2712)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2400)
... 74 more