At the moment we use ldap to secure our services but our business requirements have us looking for a more robust alternative
I have tomcat on a redhat server that is currently running the web adaptor
Such as both ldap and container managed security? Or..?May I ask whether you have just looked into applying security constraints in Tomcat to the URLs you want to secure? The security constraint would look up users/passwords in whichever realm you configure. I would also suggest that if are going to use container managed security or any security that requires a user to login, enable SSL in your container. It's easy to do with a self signed certificate, or you can buy one. I don't know your intended setup though.. is this internal only?
Where are you going to deploy arcgis.war?
How does Spring Security restrict access to:http://yourserver/arcgis/rest/services ?I know you said you were using maven overlay, but won't that only apply to your SpringSecurityProjectName web app?Step #6 of that link you posted says follow your Java application server to deploy the arcgis.war. When you do that, the /arcgis path is open to everyone. Right?
<intercept-url pattern="/arcgis/**" access="hasRole('ROLE_ADMIN')"/>
I see.I haven't used Spring for anything yet. It looks like it gives you a custom springSecurityFilterChain Filter to secure the URLs.What happens to http://yourserver/arcgis if your SpringSecurityProjectName web app crashes?It seems like all this does is move the security configuration from the web container to the Spring Framework?
Just so I'm on the same page here. You want to secure user access to making requests to your arcgis.war URL. Or are you trying to add security to an application that consumes the arcgis.war?I ask because you have mentioned using tokens and also securing your web app down to the method level. The method level of your application or the method level of say an ArcGIS Geometry service?
I'm not sure what using Spring Security "and" tokens buys you. They both restrict access to the arcgis web services based on username/password.You could deploy arcgis.war and enable security on it using ArcGIS Server Manager and get the same effect. The user consuming ArcGIS Server web service would need to authenticate, and at that point, you should be under HTTPS.This is why I asked if you are securing the ArcGIS web service or the application that consumes your ArcGIS web service.Your app can always generate a token in the background and supply those credentials to a secure ArcGIS web service without the user of your app even knowing. However, I get the feeling that you also want to secure the "app", which is fine - I get it, but I think your solution is trending towards unnecessary complication by fielding requests to arcgis.war via Spring Security.Spring Security secures your app.ArcGIS Server and possibly the web container can secure your ArcGIS Web services.
ArcGIS server manager is great but it doesn't meet our business requirements.
Hi,
Similarily to you I have an Spring application that communicates to AGS. Application is secured but services are not and they have to.
I thought about some solutions and one of them is that you described as option 1.
As I suppose there is some kind of Single Sign On at least between your application and web adaptor (services)?
Is there a possibility to get your configuration? Or even some instructions?
(unfortunatelly I can't go to link that you wrote in post)
Adam
Los miembros registrados pueden publicar, seguir actualizaciones y más. ¿Nuevo aquí? Regístrate gratis.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.