No hay una respuesta simple de "sí o no" a su pregunta, porque realmente depende: ¿qué quiere asegurar y de qué quiere protegerlo?
Por ejemplo, he utilizado SecurityManager para implementar el filtrado de IP y permitir que solo las direcciones IP de la lista blanca se conecten a mi aplicación. Si solo desea deshabilitar el acceso a los archivos del disco, quizás la mejor solución sea ejecutar la aplicación como usuario con menos privilegios.
Si no confía en complementos de terceros, recuerde que una vez que permite la ejecución del código del complemento, ese complemento puede bloquear su aplicación si lo desea incluso si usa SecurityManager. Si su aplicación carga complementos, tal vez el plugin de lista blanca y la lista de verificación antes de cargar el plugin sea una mejor solución.
Si decide usarlo, recibirá un golpe de rendimiento (ya que JVM hará más comprobaciones), pero la rapidez con la que se ejecutará realmente depende de su código/configuración que hará las comprobaciones. Mi lista blanca de IP era bastante rápida ya que incluía solo la búsqueda de una sola lista; si sus cheques incluyen la invocación de un servicio web remoto y el acceso a la base de datos puede ralentizar mucho las cosas, pero por otro lado, incluso eso no debería importar si tiene suficiente hardware y pocos usuarios concurrentes (en otras palabras, si puede pagarlo) .
En nuestro caso, el código de la tercera parte son varias bibliotecas de SO conocidas. Revisar cada línea de código es una tarea ardua para verificar si hay algún código "malo" potencial. Confío en estas bibliotecas, pero nuestro cliente es un poco paranoico :) – Kaitsu
Debe tener cuidado antes de decir que no está ejecutando el código de otra persona. Por ejemplo, los ataques de XML External Entity (XEE) se pueden usar si se analiza XML, pero la mayoría de la gente diría que se trata de "solo datos". – bgiles