Problemas al acceder a las cnetworkingenciales de SVN en keychain en macOS v10.12 (Sierra) utilizando Subclipse

Al utilizar varias instalaciones de aplicaciones de Eclipse, ya no puedo acceder a las cnetworkingenciales de Subversion en el llavero desde aplicaciones Eclipse adicionales después de actualizar a macOS v10.12 (Sierra). Algo parece haber cambiado en Sierra en el event handlingl sistema operativo de la identificación de aplicaciones para el acceso de llavero.

Configuración: Eclipse v4.6 (Neon): dos instalaciones de Eclipse.app para administrar diferentes sets de complementos y espacios de trabajo. Subversion 1.9 (installation de Homebrew ). La configuration del cliente SVN tiene una configuration de authentication pnetworkingeterminada y almacena / accede a las cnetworkingenciales utilizando el llavero Mac. Originalmente configurado en OS X v10.11 (El Capitan) – Operaciones de SVN desde el funcionamiento de la command-line, ambas aplicaciones Eclipse activaron requestes para permitir el acceso de llavero que se concedió; tanto javaHL como SVNKit utilizados desde varios espacios de trabajo, todo bien.

[Nota de configuration adicional: las copys de eclipse.app no están instaladas en la carpeta Aplicaciones – mis instalaciones de Eclipse se mantienen en un directory separado en la unidad de arranque donde administro las herramientas de desarrollo y las secuencias de ayuda del iniciador del espacio de trabajo]

Después de la actualización a macOS 10.12 (Sierra), sin ningún otro cambio en el sistema, la línea de command SVN sigue funcionando y una de las instalaciones de eclipse.app activó el acceso de llavero y funcionó como se esperaba sin más requestes de cnetworkingenciales. La ejecución de la segunda installation de eclipse.app no recibió un aviso para permitir el acceso a la llave y siempre va directamente a un cuadro de dialog de contraseña. El uso de la casilla Guardar en el dialog parece funcionar solo durante la duración de la session actual; la próxima vez que se ejecute la aplicación Eclipse, se mostrará de nuevo la request de la contraseña, por lo que cualquier espacio de trabajo utilizado desde la segunda installation de Eclipse ya no podrá acceder a las cnetworkingenciales de llavero.

El uso de Keychain Access para verificar el elemento de cnetworkingenciales SVN verifica SVN y Eclipse aparece como aplicaciones permitidas para acceder siempre al elemento. Agregar manualmente una reference a la segunda installation de eclipse.app que ya no puede acceder al elemento no resuelve el problema: sigo obteniendo una request de contraseña en cualquier acceso al repository, por lo que macOS aparentemente ya no distingue los dos eclipses diferentes. la aplicación copy como aplicaciones diferentes bajo macOS v10.12 (Sierra).

Intenta resolver, incluida la reconstrucción de Subversion; instalando un tercer eclipse.app limpio (intenté un 4.7 RC para ser diferente a las dos 4.6 copys actualmente en uso); agregue explícitamente múltiples references de Eclipse al elemento de llavero SVN usando el acceso de llavero; eliminó el elemento SVN llavero por lo que fue recreado fresco en 10.12. Ninguno de estos funciona

La única solución que actualmente se encuentra que permite instalaciones adicionales de eclipse.app para acceder a keychain es usar Keychain Access y cambiar la configuration de control de acceso del estándar "Confirmar antes de permitir el acceso" con la list de aplicaciones que tienen acceso específico a "Permitir acceso a todas las aplicaciones éste ítem".

Esta no es una resolución particularmente satisfactoria y es una degradación significativa en relación con las versiones anteriores de OS X / macOS; tener que volver a ingresar las cnetworkingenciales de SVN cada vez que se utiliza un espacio de trabajo es prácticamente inutilizable. La mejor teoría hasta ahora es que el problema parece estar asociado a algún cambio en macOS v10.12 (Sierra) con la forma en que se identifican las aplicaciones para el acceso de llavero; posiblemente relacionado con la aleatorización de ruta de manera que la location de la aplicación ya no distingue varias copys de la aplicación con el mismo ID de package subyacente (?)