Skip to content
This repository has been archived by the owner on Jul 3, 2023. It is now read-only.

Race condition deleting data store with sp connection #66

Closed
iwarapter opened this issue Apr 2, 2021 · 1 comment
Closed

Race condition deleting data store with sp connection #66

iwarapter opened this issue Apr 2, 2021 · 1 comment
Labels
bug Something isn't working pingfederate-bug Bugs related to the PingFederate admin API

Comments

@iwarapter
Copy link
Owner

Community Note

  • Please vote on this issue by adding a 馃憤 reaction to the original issue to help the community and maintainers prioritize this request
  • Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment

Terraform Version

Affected Resource(s)

  • pingfederate_jdbc_data_store
  • pingfederate_ldap_data_store
  • pingfederate_idp_sp_connection

Terraform Configuration Files

Any valid configuraiton

Debug Output

/opt/out/instance/log/admin-api.log:	2021-04-02 12:07:25,732| Administrator| Basic| 172.17.0.1| DELETE| /idp/spConnections/deleteme| 204 
/opt/out/instance/log/admin-api.log:	2021-04-02 12:07:25,744| Administrator| Basic| 172.17.0.1| DELETE| /dataStores/deleteme| 500 
/opt/out/instance/log/server.log:	2021-04-02 12:07:24,980  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DataSourceManagerImpl] Saving JDBC DataSource deleteme...
/opt/out/instance/log/server.log:	2021-04-02 12:07:24,981  DEBUG [org.sourceid.saml20.domain.datasource.tag.DataSourceTagUtil] No matching tags. Returning default connection: jdbc:hsqldb:mem:mymemdb
/opt/out/instance/log/server.log:	2021-04-02 12:07:24,982  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DBCPDataSourceDeployer] Deployed datasource: deleteme
/opt/out/instance/log/server.log:	2021-04-02 12:07:24,982  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DBCPDataSourceDeployer] Touch /opt/out/instance/server/default/data/module/provisioner-notify.txt
/opt/out/instance/log/server.log:	2021-04-02 12:07:24,983  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DataSourceManagerImpl] Saving JDBC DataSources...
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,053  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DataSourceManagerImpl] Saving JDBC DataSources...
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,071  DEBUG [org.sourceid.saml20.metadata.partner.impl.MetadataDirectoryHybridDbImpl] Deleting SP connection foo
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,072  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='1'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,075  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,076  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,076  DEBUG [org.sourceid.saml20.metadata.partner.impl.MetadataDirectoryHybridDbImpl] Saving delta replication state
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,584  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,585  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,588  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,588  DEBUG [org.sourceid.saml20.metadata.partner.impl.MetadataDirectoryHybridDbImpl] Saving SP connection foo
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,591  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute', timeSpentMs='1'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,591  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-to-connection-mapping-index-db', eventType='execute', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,591  DEBUG [org.sourceid.saml20.metadata.partner.impl.MetadataDirectoryHybridDbImpl] Saving delta replication state
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,592  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,648  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DataSourceManagerImpl] Saving JDBC DataSource deleteme...
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,648  DEBUG [org.sourceid.saml20.domain.datasource.tag.DataSourceTagUtil] No matching tags. Returning default connection: jdbc:hsqldb:mem:mymemdb
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,648  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DBCPDataSourceDeployer] Deployed datasource: deleteme
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,649  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DBCPDataSourceDeployer] Touch /opt/out/instance/server/default/data/module/provisioner-notify.txt
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,649  DEBUG [org.sourceid.saml20.domain.mgmt.impl.DataSourceManagerImpl] Saving JDBC DataSources...
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,728  DEBUG [org.sourceid.saml20.metadata.partner.impl.MetadataDirectoryHybridDbImpl] Deleting SP connection foo
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,728  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,730  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,730  DEBUG [com.pingidentity.common.util.timers.EventTimer] DSEventTimer{dataStoreName='PFIndexDS', dataStoreType='JDBC', dataStoreUsedBy='connection-index-db', eventType='execute-query', timeSpentMs='0'}
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,730  DEBUG [org.sourceid.saml20.metadata.partner.impl.MetadataDirectoryHybridDbImpl] Saving delta replication state
/opt/out/instance/log/server.log:	2021-04-02 12:07:25,743  ERROR [com.pingidentity.pf.common.api.RuntimeExceptionMapper] API service runtime error occured:
/opt/out/instance/log/server.log:	java.lang.NullPointerException: null
/opt/out/instance/log/server.log:		at org.sourceid.saml20.domain.util.InUseDetectionUtil.isDataSourceInUseBySpConnection(InUseDetectionUtil.java:584) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at org.sourceid.saml20.domain.util.InUseDetectionUtil.isDataSourceInUse(InUseDetectionUtil.java:371) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at org.sourceid.saml20.domain.mgmt.impl.DataSourceManagerImpl.isInUse(DataSourceManagerImpl.java:1020) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at $DataSourceManager_1788f2ac80a.isInUse($DataSourceManager_1788f2ac80a.java) ~[?:?]
/opt/out/instance/log/server.log:		at org.sourceid.saml20.domain.mgmt.proxy.CopyingDSMgrProxy.isInUse(CopyingDSMgrProxy.java:119) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at com.pingidentity.pf.admin.rest.controller.DataStoreController.deleteDataStore(DataStoreController.java:468) ~[?:?]
/opt/out/instance/log/server.log:		at jdk.internal.reflect.GeneratedMethodAccessor674.invoke(Unknown Source) ~[?:?]
/opt/out/instance/log/server.log:		at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
/opt/out/instance/log/server.log:		at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
/opt/out/instance/log/server.log:		at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409) ~[jersey-server.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409) ~[jersey-servlet.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558) ~[jersey-servlet.jar:1.19]
/opt/out/instance/log/server.log:		at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733) ~[jersey-servlet.jar:1.19]
/opt/out/instance/log/server.log:		at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) ~[servlet-api-3.1.jar:3.1.0]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at com.pingidentity.common.util.access.ExecutionContextFilter.doFilter(ExecutionContextFilter.java:51) ~[pf-commons.jar:?]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at com.pingidentity.pf.common.api.filter.RequestProxyFilter.doFilter(RequestProxyFilter.java:21) ~[pf-common-api.jar:?]
/opt/out/instance/log/server.log:		at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:56) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.sourceid.saml20.domain.util.api.ws.ConsoleOnlyFilter.doFilter(ConsoleOnlyFilter.java:23) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:56) ~[pf-protocolengine.jar:?]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1602) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) ~[jetty-security-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1700) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480) ~[jetty-servlet-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1667) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:152) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.Server.handle(Server.java:505) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267) ~[jetty-server-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:427) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:321) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:159) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) ~[jetty-io-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:698) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:804) ~[jetty-util-9.4.18.v20190429patch5.jar:9.4.18.v20190429patch5]
/opt/out/instance/log/server.log:		at java.lang.Thread.run(Thread.java:834) [?:?]

Expected Behavior

Resources should be deleted

Actual Behavior

Data stores fail to delete 500 Internal Server error

Error: unable to delete JdbcDataStores: 500 Internal Server Error {"resultId":"server_error","message":"A server error has occurred. Check the server logs for details."}

Steps to Reproduce

curl -i -k -X POST -H "X-Bypassexternalvalidation: true" -H "X-XSRF-Header: pingfederate" -H "Content-Type: application/json" --user Administrator:2FederateM0re -d '{"type":"SP","id":"deleteme","name":"acc_test_foo","entityId":"foo","active":true,"loggingMode":"STANDARD","virtualEntityIds":[],"credentials":{"certs":[{"primaryVerificationCert":false,"secondaryVerificationCert":false,"x509File":{"id":"mw96rsfecl1fg956e9ypgns5q","fileData":"-----BEGIN CERTIFICATE-----\nMIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsFADA5MQswCQYD\nVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24gUm9vdCBDQSAxMB4XDTE1\nMDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTELMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpv\nbjEZMBcGA1UEAxMQQW1hem9uIFJvb3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBALJ4gHHKeNXjca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgH\nFzZM9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qwIFAGbHrQ\ngLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6VOujw5H5SNz/0egwLX0t\ndHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L93FcXmn/6pUCyziKrlA4b9v7LWIbxcce\nVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQmjgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB\n/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3\nDQEBCwUAA4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDIU5PM\nCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUsN+gDS63pYaACbvXy\n8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vvo/ufQJVtMVT8QtPHRh8jrdkPSHCa\n2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2\nxJNDd2ZhwLnoQdeXeGADbkpyrqXRfboQnoZsG4q5WTP468SQvvG5\n-----END CERTIFICATE-----\n"},"activeVerificationCert":false,"encryptionCert":false}],"inboundBackChannelAuth":{"type":"INBOUND","digitalSignature":false,"verificationSubjectDN":"cn=foo","requireSsl":false}},"attributeQuery":{"attributeSources":[{"type":"JDBC","dataStoreRef":{"id":"ProvisionerDS","location":"https://localhost:9999/pf-admin-api/v1/dataStores/ProvisionerDS"},"id":"foo","description":"foo","schema":"INFORMATION_SCHEMA","table":"ADMINISTRABLE_ROLE_AUTHORIZATIONS","filter":"*"}],"attributeContractFulfillment":{"foo":{"source":{"type":"JDBC_DATA_STORE","id":"foo"},"value":"GRANTEE"}},"issuanceCriteria":{"conditionalCriteria":[]},"attributes":["foo"],"policy":{"signResponse":false,"signAssertion":false,"encryptAssertion":false,"requireSignedAttributeQuery":false,"requireEncryptedNameId":false}}}' https://localhost:9999/pf-admin-api/v1/idp/spConnections
curl -i -k -X POST -H "X-Bypassexternalvalidation: true" -H "X-XSRF-Header: pingfederate" -H "Content-Type: application/json" --user Administrator:2FederateM0re -d '{"id": "deleteme","allowMultiValueAttributes":true,"blockingTimeout":5000,"connectionUrl":"jdbc:hsqldb:mem:mymemdb","connectionUrlTags":[{"connectionUrl":"jdbc:hsqldb:mem:mymemdb","defaultSource":true,"tags":""}],"driverClass":"org.hsqldb.jdbcDriver","idleTimeout":5,"maskAttributeValues":false,"maxPoolSize":100,"minPoolSize":10,"name":"terraform","password":"secret","type":"JDBC","userName":"sa"}' https://localhost:9999/pf-admin-api/v1/dataStores

curl -i -k -X DELETE -H "X-XSRF-Header: pingfederate" --user Administrator:2FederateM0re https://localhost:9999/pf-admin-api/v1/idp/spConnections/deleteme &
curl -i -k -X DELETE -H "X-XSRF-Header: pingfederate" --user Administrator:2FederateM0re https://localhost:9999/pf-admin-api/v1/dataStores/deleteme &

Important Factoids

This is actually a pingfederate bug, but perhaps we can mask it in the provider

@iwarapter iwarapter added bug Something isn't working pingfederate-bug Bugs related to the PingFederate admin API labels Apr 2, 2021
@iwarapter
Copy link
Owner Author

Workaround implemented

mosersil pushed a commit to mosersil/terraform-provider-pingfederate that referenced this issue Jan 21, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working pingfederate-bug Bugs related to the PingFederate admin API
Projects
None yet
Development

No branches or pull requests

1 participant