Mutual Authentication Not working with Third party Application
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-03-2020 07:53 PM
Hi All,
I have created the Java KeyStore Files using the below commands
keytool -genkey -alias snow -keyalg RSA -validity 365 -keystore snow.jks -storepass abc123 -keypass abc123
keytool -export -alias snow -keystore snow.jks -storepass abc123 -file snow.cer
I have imported the snow.jks in the Certificates X509 certs on Servicenow side.
I have imported the Cer file on my Application.
When I tried to execute the rest API call call (Out bound) I am seeing the below error,
REST Msg Outbound - RESTMessageClient : Error executing REST request: unsupported protocol: 'chandrahttps': java.lang.IllegalStateException: unsupported protocol: 'chandrahttps': org.apache.commons.httpclient.protocol.Protocol.lazyRegisterProtocol(Protocol.java:149)
org.apache.commons.httpclient.protocol.Protocol.getProtocol(Protocol.java:117)
org.apache.commons.httpclient.HttpHost.<init>(HttpHost.java:107)
org.apache.commons.httpclient.HttpMethodBase.setURI(HttpMethodBase.java:280)
org.apache.commons.httpclient.HttpMethodBase.<init>(HttpMethodBase.java:220)
I am not able to execute any rest call from ServiceNow to my third party application using Mutual Authentication Can anyone help me with this.
Thanks,
Manohar
- 2,079 Views
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-03-2020 08:34 PM
Hi, if you share the code\configuration that is causing this error, it will be easier for the forum to review and assist you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-03-2020 09:01 PM
Hi Tony,
-> I have created the new X509 certificate on the Servicenow side, in that certificate I have imported my JKS file as Java Key Store. Please refer below.
-> After that, I have created one Protocol profile with that X509 certificate. Please refer below
I am using this protocol profile as a mutual authentication for my Script include like below
var request = new sn_ws.RESTMessageV2();
request.setHttpMethod('POST');
request.setMutualAuth("myhttps");
When i execute this script include from my workflow i got this certificate error.
Exception while registering protocol: myhttps Error: Password must not be null: no thrown error
Exception while registering protocol: myhttps Error: Get Key failed: null: no thrown error
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-07-2020 03:45 AM
Hi Tony,
-> I have created the new X509 certificate on the Servicenow side, in that certificate I have imported my JKS file as Java Key Store. Please refer below.
-> After that, I have created one Protocol profile with that X509 certificate. Please refer below
I am using this protocol profile as a mutual authentication for my Script include like below
var request = new sn_ws.RESTMessageV2();
request.setHttpMethod('POST');
request.setMutualAuth("myhttps");
When i execute this script include from my workflow i got this certificate error.
Exception while registering protocol: myhttps Error: Password must not be null: no thrown error
Exception while registering protocol: myhttps Error: Get Key failed: null: no thrown error
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-07-2020 03:45 AM
Hi All,
Can anyone help me with this error,
REST Msg Outbound - RESTMessageClient : Error executing REST request: unsupported protocol: 'myhttps': java.lang.IllegalStateException: unsupported protocol: 'myhttps': org.apache.commons.httpclient.protocol.Protocol.lazyRegisterProtocol(Protocol.java:149)
org.apache.commons.httpclient.protocol.Protocol.getProtocol(Protocol.java:117)
org.apache.commons.httpclient.HttpHost.<init>(HttpHost.java:107)
org.apache.commons.httpclient.HttpMethodBase.setURI(HttpMethodBase.java:280)
org.apache.commons.httpclient.HttpMethodBase.<init>(HttpMethodBase.java:220)
org.apache.commons.httpclient.methods.ExpectContinueMethod.<init>(ExpectContinueMethod.java:93)
org.apache.commons.httpclient.methods.EntityEnclosingMethod.<init>(EntityEnclosingMethod.java:119)
org.apache.commons.httpclient.methods.PostMethod.<init>(PostMethod.java:106)
com.glide.communications.HTTPRequest.post(HTTPRequest.java:67)
com.glide.rest.outbound.direct.DirectRESTRequestDispatcher.doPost(DirectRESTRequestDispatcher.java:131)
com.glide.rest.outbound.direct.DirectRESTRequestDispatcher.doRequest(DirectRESTRequestDispatcher.java:94)
com.glide.rest.outbound.direct.DirectRESTRequestDispatcher.invoke(DirectRESTRequestDispatcher.java:50)
com.glide.rest.outbound.RESTMessageClient.invoke(RESTMessageClient.java:100)
com.glide.rest.outbound.RESTMessageClient.execute(RESTMessageClient.java:78)
com.glide.rest.outbound.scriptable.ScriptableRESTMessageClient.jsFunction_execute(ScriptableRESTMessageClient.java:67)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)