{"id":17122,"date":"2022-02-16T19:08:09","date_gmt":"2022-02-16T18:08:09","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/"},"modified":"2022-02-16T19:08:09","modified_gmt":"2022-02-16T18:08:09","slug":"weblogic-no-more-sso-after-a-ssl-certificate-renewal","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/","title":{"rendered":"WebLogic &#8211; No more SSO after a SSL Certificate renewal?"},"content":{"rendered":"<p>I had an interesting case at a customer where the Single Sign On (using SAML2) on a WebLogic Server stopped working after the renewal of the WebLogic SSL Certificate. The WebLogic Server itself and its applications were still accessible (by bypassing the SSO) and working fine but not the SSO itself. That&#8217;s definitively a strange behavior and not something I would expect to see broken after just changing a certificate that has, apparently, no link to it at all but that&#8217;s what happened.<\/p>\n<p>&nbsp;<\/p>\n<p>What I mean by the SSO stopped working is that WebLogic returned its usual 403 Forbidden (e.g.:\u00a0<a href=\"https:\/\/www.dbi-services.com\/blog\/weblogic-ssoatnatz-403-forbidden-a-first-issue\/\" target=\"_blank\" rel=\"noopener\">WebLogic \u2013 SSO\/Atn\/Atz \u2013 403 Forbidden, a first issue<\/a> or <a href=\"https:\/\/www.dbi-services.com\/blog\/weblogic-ssoatnatz-403-forbidden-another-issue\/\" target=\"_blank\" rel=\"noopener\">WebLogic \u2013 SSO\/Atn\/Atz \u2013 403 Forbidden, another issue<\/a>). As always, the first step to try to debug what is really happening is to enable the SAML2\/Atn\/Atz logging (<a href=\"https:\/\/www.dbi-services.com\/blog\/weblogic-ssoatnatz-how-to-enable-debug-logs\/\" target=\"_blank\" rel=\"noopener\">WebLogic \u2013 SSO\/Atn\/Atz \u2013 How to enable debug logs<\/a>) since it usually gives good insight into the real issue and it was again the case:<\/p>\n<pre class=\"brush: java; gutter: true; first-line: 1; highlight: [4,9,26,30,49,50,54,55,56]\">####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SAML2Filter: Processing request on URI '\/D2\/X3_Portal.jsp'&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;getServiceTypeFromURI(): request URI is '\/D2\/X3_Portal.jsp'&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;getServiceTypeFromURI(): request URI is not a service URI&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;getServiceTypeFromURI(): returning service type 'SPinitiator'&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SP initiating authn request: processing&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SP initiating authn request: partner id is null&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SP initiating authn request: use partner binding HTTP\/Redirect&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;signature algorithm of saml object: null&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;URL encoded saml message:fZBRa4MwF...Rd%2F%2FgU%3D&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;URL encoded relay state:null&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;QueryString without signature_SAMLRequest=fZBRa4MwF...Rd%2F%2FgU%3D&gt;\n####&lt;Jan 24, 2022 7:04:57&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;URL:https:\/\/sso.domain.net\/oamfed\/idp\/samlv20?SAMLRequest=fZBRa4MwF...Rd%2F%2FgU%3D&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SAML2Servlet: Initialized logger service&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SAML2Servlet: Initialized SAML2 service&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SAML2Servlet: setConfigKey called with key 'default'&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;SAML2Servlet: Processing request on URI '\/saml2\/sp\/acs\/post'&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;getServiceTypeFromURI(): request URI is '\/saml2\/sp\/acs\/post'&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;getServiceTypeFromURI(): service URI is '\/sp\/acs\/post'&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;getServiceTypeFromURI(): returning service type 'ACS'&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;Assertion consumer service: processing&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;get SAMLResponse from http request:PHNhbWxwO...\n...\n...\n...bnNlPg==\n&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;BASE64 decoded saml message:&lt;samlp:Response xmlns_samlp=\"urn:oasis:names:tc:SAML:2.0:protocol\" ...\n...\n...\n...&lt;\/saml:Assertion&gt;&lt;\/samlp:Response&gt;&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Service&gt; &lt;BEA-000000&gt; &lt;&lt;samlp:Response&gt; is signed.&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.IdentityAssertionServiceImpl.assertIdentity(SAML2.Assertion.DOM)&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.IdentityAssertionTokenServiceImpl.assertIdentity(SAML2.Assertion.DOM)&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Atn&gt; &lt;BEA-000000&gt; &lt;SAML2IdentityAsserterProvider: start assert SAML2 token&gt;\n...\n...\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.LoginModuleWrapper.initialize ClassLoader=java.net.URLClassLoader@5dec31be&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.LoginModuleWrapper.initialize created delegate login module&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;LDAP ATN LoginModule initialized&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.LoginModuleWrapper.initialize delegated&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.LoginModuleWrapper.login&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;LDAP Atn Login&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.CallbackHandlerWrapper.handle&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.CallbackHandlerWrapper.handle callbcacks[0] will be delegated&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.CallbackHandlerWrapper.handle callbcacks[0] will use NameCallback to retrieve name&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.CallbackHandlerWrapper.handle will delegate all callbacks&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecuritySAML2Atn&gt; &lt;BEA-000000&gt; &lt;SAMLIACallbackHandler: callback[0]: NameCallback: setName(PatouMorgan01)&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.CallbackHandlerWrapper.handle delegated callbacks&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.CallbackHandlerWrapper.handle got username from callbacks[0], UserName=PatouMorgan01&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;LDAP Atn Login username: PatouMorgan01&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;getUserDNName? user:PatouMorgan01&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;getDNForUser search(\"ou=people,ou=intranet,dc=company,dc=com\", \"(&amp;(uid=PatouMorgan01)(objectclass=companyperson))\", base DN &amp; below)&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;new LDAP connection to host ldaps.domain.net port 636 use local connection is false&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;created new LDAP connection LDAPConnection { ldapVersion:2 bindDN:\"\"}&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;Connecting to host=ldaps.domain.net, ssl port=636&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;Successfully connected to host=ldaps.domain.net, ssl port=636&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;Security&gt; &lt;BEA-099117&gt; &lt;The LDAP authentication provider named \"LDAPSAuthenticator\" failed to make connection to ldap server at ldaps:\/\/ldaps.domain.net:636, the error cause is: Fatal Alert received: Certificate Unknown.&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;connection failed netscape.ldap.LDAPException: Fatal Alert received: Certificate Unknown (91); Cannot connect to the LDAP server&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;weblogic.security.providers.authentication.LoginServerUnavailableException: Fatal Alert received: Certificate Unknown\n        at weblogic.security.providers.authentication.LDAPAtnLoginModuleImpl.handleLDAPAtnDelegateException(LDAPAtnLoginModuleImpl.java:679)\n        at weblogic.security.providers.authentication.LDAPAtnLoginModuleImpl.login(LDAPAtnLoginModuleImpl.java:219)\n        at com.bea.common.security.internal.service.LoginModuleWrapper$1.run(LoginModuleWrapper.java:110)\n        at java.security.AccessController.doPrivileged(Native Method)\n        at com.bea.common.security.internal.service.LoginModuleWrapper.login(LoginModuleWrapper.java:106)\n        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n        at java.lang.reflect.Method.invoke(Method.java:498)\n        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:755)\n        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:195)\n        at javax.security.auth.login.LoginContext$4.run(LoginContext.java:682)\n        at javax.security.auth.login.LoginContext$4.run(LoginContext.java:680)\n        at java.security.AccessController.doPrivileged(Native Method)\n        ...\n        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1632)\n        at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:256)\n        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)\n        at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)\n&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.LoginModuleWrapper.initialize LoginModuleClassName=weblogic.security.providers.authentication.LDAPAtnLoginModuleImpl&gt;\n####&lt;Jan 24, 2022 7:04:58&gt; &lt;SecurityAtn&gt; &lt;BEA-000000&gt; &lt;com.bea.common.security.internal.service.LoginModuleWrapper.initialize ClassLoader=java.net.URLClassLoader@5dec31be&gt;\n...<\/pre>\n<p>&nbsp;<\/p>\n<p>As you can see above, the SSO itself starts properly, the SAML2 exchange is done successfully but then WebLogic tries to check if the SAML2 user is valid by trying to check the user details inside the LDAP but that fails with &#8220;<em>Fatal Alert received: Certificate Unknown<\/em>&#8220;. Because WebLogic isn&#8217;t able to contact the LDAP, it checks the local users but, in this case, all users are on the LDAP so the SSO is rejected, and the 403 Forbidden page is displayed.<\/p>\n<p>&nbsp;<\/p>\n<p>As part of the update process for the WebLogic SSL Certificate, the following is done:<\/p>\n<ul>\n<li>Create a new SSL Certificate (JKS) for WebLogic<\/li>\n<li>Create a new Trust Store containing the needed CA and the new WebLogic specific SSL Certificate<\/li>\n<li>Update the Java cacerts with the new WebLogic specific SSL Certificate<\/li>\n<li>Update the WebLogic cacerts with the new WebLogic specific SSL Certificate<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>All these steps were verified and there were no big differences before and after the SSL Certificate renewal. The only small one I could see was regarding the SSL Certificate itself and more specifically regarding the &#8220;<em><strong>ExtendedKeyUsages<\/strong><\/em>&#8221; of it. On the old\/previous SSL Certificate, this property\u00a0contained two options: <strong>serverAuth<\/strong> and <strong>clientAuth<\/strong>. However, the new SSL Certificate only contained the <strong>serverAuth<\/strong> and not the <strong>clientAuth<\/strong>:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1; highlight: [1,9,28,29,30,56,64,83,84,85,86]\">[weblogic@wls01 certs]$ keytool -v -list -keystore new\/identity.jks\nEnter keystore password:\nKeystore type: jks\nKeystore provider: SUN\n\nYour keystore contains 1 entry\n\nAlias name: wlscert\nCreation date: Jan 24, 2022\nEntry type: PrivateKeyEntry\nCertificate chain length: 3\nCertificate[1]:\nOwner: CN=wls01.domain.net, OU=it, O=company, L=city, ST=state, C=CH\nIssuer: CN=Int CA\nSerial number: ...9773\nValid from: Mon Jan 24 06:30:09 UTC 2022 until: Tue Jan 24 06:30:09 UTC 2023\nCertificate fingerprints:\n         MD5:  ...\n         SHA1: ...\n         SHA256: ...\nSignature algorithm name: SHA256withRSA\nSubject Public Key Algorithm: 2048-bit RSA key\nVersion: 3\n\nExtensions:\n...\n#7: ObjectId: 2.5.29.37 Criticality=false\nExtendedKeyUsages [\n  serverAuth\n]\n\n#8: ObjectId: 2.5.29.15 Criticality=true\nKeyUsage [\n  DigitalSignature\n  Key_Encipherment\n]\n...\n\nCertificate[2]:\nOwner: CN=Int CA\nIssuer: CN=Root CA\n...\n\nCertificate[3]:\nOwner: CN=Root CA\nIssuer: CN=Root CA\n...\n\n\n*******************************************\n*******************************************\n\n\n[weblogic@wls01 certs]$\n[weblogic@wls01 certs]$\n[weblogic@wls01 certs]$ keytool -v -list -keystore old\/identity.jks\nEnter keystore password:\nKeystore type: jks\nKeystore provider: SUN\n\nYour keystore contains 1 entry\n\nAlias name: wlscert\nCreation date: Jan 29, 2020\nEntry type: PrivateKeyEntry\nCertificate chain length: 3\nCertificate[1]:\nOwner: CN=wls01.domain.net, OU=it, O=company, L=city, ST=state, C=CH\nIssuer: CN=Int CA\nSerial number: ...3e41\nValid from: Wed Jan 29 08:27:25 UTC 2020 until: Fri Jan 28 08:27:25 UTC 2022\nCertificate fingerprints:\n         MD5:  ...\n         SHA1: ...\n         SHA256: ...\nSignature algorithm name: SHA256withRSA\nSubject Public Key Algorithm: 2048-bit RSA key\nVersion: 3\n\nExtensions:\n...\n#7: ObjectId: 2.5.29.37 Criticality=false\nExtendedKeyUsages [\n  clientAuth\n  serverAuth\n]\n\n#8: ObjectId: 2.5.29.15 Criticality=true\nKeyUsage [\n  DigitalSignature\n  Key_Encipherment\n]\n...\n\nCertificate[2]:\nOwner: CN=Int CA\nIssuer: CN=Root CA\n...\n\nCertificate[3]:\nOwner: CN=Root CA\nIssuer: CN=Root CA\n...\n\n\n*******************************************\n*******************************************\n\n\n[weblogic@wls01 certs]$<\/pre>\n<p>&nbsp;<\/p>\n<p>After some digging, it appeared that the process of generating the SSL Certificate, which is managed by another team at this customer, changed for security reasons. Therefore, newly generated SSL Certificates do not have the <strong>clientAuth<\/strong> anymore, which means that this SSL Certificate cannot be used as a &#8220;<em>client<\/em>&#8221; certificate. It is understandable that they would want to remove that by default since it could be used by malicious people, but it also means that it would break any 2-way-SSL or similar behavior where SSL Certificates of a &#8220;<em>client<\/em>&#8221; and &#8220;<em>server<\/em>&#8221; are exchanged.<\/p>\n<p>&nbsp;<\/p>\n<p>In this case, the WebLogic Server is acting as the &#8220;<em>client<\/em>&#8221; of the LDAP Server (which must be requesting the client certificate I assume) and the communication isn&#8217;t proceeding because the SSL Certificate of the WebLogic Server doesn&#8217;t contain the <strong>clientAuth<\/strong>. Therefore, the only solution is to re-generate an SSL Certificate with the <strong>clientAuth<\/strong> this time. After doing so, the communication with the LDAPS was back and the SSO as well. If you ever face a similar situation, try to compare the previous JKS with the new one using the keytool utility for example and make sure there are no differences between them!<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I had an interesting case at a customer where the Single Sign On (using SAML2) on a WebLogic Server stopped working after the renewal of the WebLogic SSL Certificate. The WebLogic Server itself and its applications were still accessible (by bypassing the SSO) and working fine but not the SSO itself. That&#8217;s definitively a strange [&hellip;]<\/p>\n","protected":false},"author":20,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[1719,1149,1229,382,445,647],"type_dbi":[],"class_list":["post-17122","post","type-post","status-publish","format-standard","hentry","category-application-integration-middleware","tag-2-way-ssl","tag-certificate","tag-saml2","tag-ssl","tag-sso","tag-weblogic"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>WebLogic - No more SSO after a SSL Certificate renewal? - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WebLogic - No more SSO after a SSL Certificate renewal?\" \/>\n<meta property=\"og:description\" content=\"I had an interesting case at a customer where the Single Sign On (using SAML2) on a WebLogic Server stopped working after the renewal of the WebLogic SSL Certificate. The WebLogic Server itself and its applications were still accessible (by bypassing the SSO) and working fine but not the SSO itself. That&#8217;s definitively a strange [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-02-16T18:08:09+00:00\" \/>\n<meta name=\"author\" content=\"Morgan Patou\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@MorganPatou\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Morgan Patou\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/\"},\"author\":{\"name\":\"Morgan Patou\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/c4d05b25843a9bc2ab20415dae6bd2d8\"},\"headline\":\"WebLogic &#8211; No more SSO after a SSL Certificate renewal?\",\"datePublished\":\"2022-02-16T18:08:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/\"},\"wordCount\":588,\"commentCount\":0,\"keywords\":[\"2-way-SSL\",\"Certificate\",\"SAML2\",\"SSL\",\"SSO\",\"WebLogic\"],\"articleSection\":[\"Application integration &amp; Middleware\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/\",\"name\":\"WebLogic - No more SSO after a SSL Certificate renewal? - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"datePublished\":\"2022-02-16T18:08:09+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/c4d05b25843a9bc2ab20415dae6bd2d8\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WebLogic &#8211; No more SSO after a SSL Certificate renewal?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/c4d05b25843a9bc2ab20415dae6bd2d8\",\"name\":\"Morgan Patou\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"caption\":\"Morgan Patou\"},\"description\":\"Morgan Patou has over 12 years of experience in Enterprise Content Management (ECM) systems, with a strong focus in recent years on platforms such as Alfresco, Documentum, and M-Files. He specializes in the architecture, setup, customization, and maintenance of ECM infrastructures in complex &amp; critical environments. Morgan is well-versed in both engineering and operations aspects, including high availability design, system integration, and lifecycle management. He also has a solid foundation in open-source and proprietary technologies - ranging from Apache, OpenLDAP or Kerberos to enterprise-grade systems like WebLogic. Morgan Patou holds an Engineering Degree in Computer Science from ENSISA (\u00c9cole Nationale Sup\u00e9rieure d'Ing\u00e9nieurs Sud Alsace) in Mulhouse, France. He is Alfresco Content Services Certified Administrator (ACSCA), Alfresco Content Services Certified Engineer (ACSCE) as well as OpenText Documentum Certified Administrator. His industry experience spans the Public Sector, IT Services, Financial Services\\\/Banking, and the Pharmaceutical industry.\",\"sameAs\":[\"https:\\\/\\\/blog.dbi-services.com\\\/author\\\/morgan-patou\\\/\",\"https:\\\/\\\/x.com\\\/MorganPatou\"],\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/morgan-patou\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"WebLogic - No more SSO after a SSL Certificate renewal? - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/","og_locale":"en_US","og_type":"article","og_title":"WebLogic - No more SSO after a SSL Certificate renewal?","og_description":"I had an interesting case at a customer where the Single Sign On (using SAML2) on a WebLogic Server stopped working after the renewal of the WebLogic SSL Certificate. The WebLogic Server itself and its applications were still accessible (by bypassing the SSO) and working fine but not the SSO itself. That&#8217;s definitively a strange [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/","og_site_name":"dbi Blog","article_published_time":"2022-02-16T18:08:09+00:00","author":"Morgan Patou","twitter_card":"summary_large_image","twitter_creator":"@MorganPatou","twitter_misc":{"Written by":"Morgan Patou","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/"},"author":{"name":"Morgan Patou","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8"},"headline":"WebLogic &#8211; No more SSO after a SSL Certificate renewal?","datePublished":"2022-02-16T18:08:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/"},"wordCount":588,"commentCount":0,"keywords":["2-way-SSL","Certificate","SAML2","SSL","SSO","WebLogic"],"articleSection":["Application integration &amp; Middleware"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/","url":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/","name":"WebLogic - No more SSO after a SSL Certificate renewal? - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2022-02-16T18:08:09+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/weblogic-no-more-sso-after-a-ssl-certificate-renewal\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"WebLogic &#8211; No more SSO after a SSL Certificate renewal?"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8","name":"Morgan Patou","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","caption":"Morgan Patou"},"description":"Morgan Patou has over 12 years of experience in Enterprise Content Management (ECM) systems, with a strong focus in recent years on platforms such as Alfresco, Documentum, and M-Files. He specializes in the architecture, setup, customization, and maintenance of ECM infrastructures in complex &amp; critical environments. Morgan is well-versed in both engineering and operations aspects, including high availability design, system integration, and lifecycle management. He also has a solid foundation in open-source and proprietary technologies - ranging from Apache, OpenLDAP or Kerberos to enterprise-grade systems like WebLogic. Morgan Patou holds an Engineering Degree in Computer Science from ENSISA (\u00c9cole Nationale Sup\u00e9rieure d'Ing\u00e9nieurs Sud Alsace) in Mulhouse, France. He is Alfresco Content Services Certified Administrator (ACSCA), Alfresco Content Services Certified Engineer (ACSCE) as well as OpenText Documentum Certified Administrator. His industry experience spans the Public Sector, IT Services, Financial Services\/Banking, and the Pharmaceutical industry.","sameAs":["https:\/\/blog.dbi-services.com\/author\/morgan-patou\/","https:\/\/x.com\/MorganPatou"],"url":"https:\/\/www.dbi-services.com\/blog\/author\/morgan-patou\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/17122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=17122"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/17122\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=17122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=17122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=17122"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=17122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}