I have an architecture like the following one:
IIS(Windows Authentication Enabled) -> AJP Connector -> Tomcat
AJP Connector in server.xml is configured with tomcatAuthorization = true and tomcatAuthentication = false
Inside tomcat, I am able to get all user information from NTLM (roles, username, domain, etc) and everything works fine from that point of view.
Now I have the necessity to call inside tomcat, another service that uses NTLM as well. So the new architecture will be:
IIS(Windows Authentication Enabled) -> AJP Connector -> Tomcat -> external NTLM Web Service
My aim is to forward the NTLM information that Tomcat receives from IIS, to the external NTLM WS in order to makes the call by the original user, without ask user to provide again the Windows Credentials and use, inside Tomcat ,the response from that WS.
Is that any way (using e.g. Apache HTTP Client) to reuse the "NTLM" Principal obtained by IIS to perform this kind of HTTP Request?
Thanks all!
Related
I've searched around so apologies if this is a repeat question:
A web service provider I work with has migrated to the cloud, requiring TLS connections.
My customer's (The web service consumer) java environment is setup with Tomcat acting as the container, connected via AJP to an IIS (v6) web server. The IIS server is where the Security is handled.
[Tomcat srv running WS Client] --AJP Connector--> [IIS server w/ SSL] ---> [Secure Web Service]
I'm trying to understand how to invoke the HTTPS connection from my app. From what I understand, the IIS server will create the HTTPS connection, but I don't have access to that certificate/keystore on the tomcat server (at least that's my understanding). Is there a way in java to invoke an HTTPS connection remotely so the IIS server can use it's certificate?
Any help would be appreciated!
I actually have a hosting service who has a subdomain, that subdomain function is to redirect to my local server where I have my services, for example:
My domain: example.com
Subdomain: guaymas.example.com // His function is to redirect to my server (firewall)
Redirect to a port : guaymas.example.com:8080 // where I have my services
And through a port I have a web service, in order to make the data transfer more secure I wanted to implement a SSL certificate but because of my configuration I’ḿ not able to generate the certificate with letś encrypt (because buying one is not an option), I can’t verify with http or dns method, Is there any other method that I can use to generate the SSL certificate?
PD: I'm using GlassFish and Soap web services on JAVA, those are running on Linux Server and my distro is deepin
Thanks a lot
I am working on a client which will request web service(hosted on internet) which requires NTLM authentication.
Also the host machine on which my client is installed is behind proxy, first the request should
authenticate proxy server and then request would go the web service and do NTLM authentication.
I am able to do NTLM authentication via the help on NTLM authentication
I have generated the stubs via wsimport by first saving wsdl file to local file because through URL I was not able to connect(because I dont know how to set proxy in command line call to wsimport).
I have not used any frameworks like axis2 or cxf. I am using Java 1.7
When I deploy the client on non-proxy machine(direct internet), then it works but not when behind proxy. Please help.
Following simple line of code to use System Proxy did the trick.
System.setProperty("java.net.useSystemProxies", "true");
I'm developing a simple web services using Java EE Servlets.
My clients are a simple java apps (no browsers), so I need to secure my communication using TLS (or SSL v3). About Application server, I'm using Glassfish v3.
For example, I need to transfer some data from client to server within a HTTP Post Request into a secure connection.
There are some external libraries, server configurations or tutorial that can I use?
On the server side you must somehow expose your servlets via HTTPS. If you are using tomcat, check out SSL Configuration HOW-TO. If you have an Apache web server in front, see: Apache SSL/TLS Encryption.
On the client side ssl and https support is built into JDK, just call any https://... address using URLConnection. However remember that the certificate your server uses must be trusted - either confirmed by some authority or added manually on the client. Self-signed certificates by default won't be accepted.
I'm using Apache Axis 1.5.1 to code a web service client connecting to a service over SSL. My application is running in Tomcat with SSL configuration setup in JKS. However, when I connect to the server, the connection is failing because the cert from our client is not being sent to the server. Is this something that has to be set in the client through code? Also note that the server does not need any user name or password authentication. With SSL turned off, everything works fine.
Thanks,
Two common approaches here:
http://ws.apache.org/xmlrpc/ssl.html
WebLogic has its own stuff:
http://download.oracle.com/docs/cd/E12840_01/wls/docs103/security/SSL_client.html#wp1029670
As long as you have the certificates configured correctly in your trust store accessible to Tomcat, there are no changes to Apache Axis HTTP code.