2011-03-08 23 views
35

¿Hay alguna guía sobre "la debida" ubicación del almacén de claves de Android? Estoy listo para lanzar mi primera aplicación y en Exportar aplicación para Android Estoy creando un nuevo almacén de claves que quiere que especifique la ubicación.Buena ubicación para Android Keystore?

FWIW my Eclipse Workspace se encuentra en una unidad de red compartida y puedo acceder a ella desde cualquiera de los 3 sistemas de desarrollo diferentes. No tuve problemas para hacer esto. La ubicación predeterminada que surgió para la ubicación del almacén de claves parecía estar en el árbol de directorios del SDK, pero eso no funcionará para mí porque cada PC tiene su propia copia del SDK instalada. Necesito que esté en una ubicación que se pueda ver desde cualquier PC desde la que pueda estar haciendo trabajo de desarrollo, así que supongo que eso significa la unidad de red o alguna ubicación virtual en la nube.

¿Hay directrices, reglas, restricciones u otras cosas que necesito saber sobre la ubicación del almacén de claves?

Respuesta

27

Mientras que es un lugar seguro (es decir, copia de seguridad de forma remota en el control de la fuente o por algún otro método) que en realidad no importa. Si pierde el almacén de claves de alguna manera, ya no podrá actualizar su aplicación en el mercado de Android y se verá obligado a eliminarlo y volver a subirlo como una nueva aplicación firmada con una nueva clave.

Si le preocupa la seguridad, recuerde que tanto el almacén de claves como las claves individuales que contiene pueden (y deben) estar protegidas con contraseña.

Mi almacén de claves está en la raíz de mi espacio de trabajo de eclipse android, que también es el directorio raíz del repositorio de git que uso para el control de versiones. Viendo que estás desarrollando en varias máquinas y que posiblemente quieras hacer un lanzamiento de alguno de ellos, te sugiero que hagas lo mismo.

+7

¿Qué pasa si su proyecto está en Github? ¿Es seguro colocar el almacén de claves en la carpeta raíz? –

+1

Supongo que es porque está protegido con contraseña. Estoy haciendo lo mismo con mis repositorios públicos en github – ThanosFisherman

+3

Si el código fuente está abierto, no creo que sea una buena idea hacerlo en ninguna parte del proyecto (aunque podría permanecer sin compromiso), porque ** tarde o temprano alguien puede descifrar/aplicar fuerza bruta al archivo ** y sus contraseñas. Pero si su código no está abierto y no está publicado, entonces almacenar el almacén de claves en el directorio raíz o en el directorio 'app' es inofensivo siempre que su repositorio sea privado y seguro. – soshial

11

Desea mantener su Keystore seguro. Si alguien lo obtuvo, esencialmente perderá su identidad de autor.

http://developer.android.com/guide/publishing/app-signing.html (parte inferior de la página)

+4

"Si un tercero debe manejar a tomar su clave sin su conocimiento o permiso, esa persona podría firmar y distribuir aplicaciones que reemplazan maliciosamente sus aplicaciones auténticas o las corrompen. Dicha persona también podría firmar y distribuir aplicaciones bajo su identidad que ataquen otras aplicaciones o el propio sistema, o corrompan o roban datos de usuario ". - Supongo que a eso te refieres. (Ya no está en la parte inferior de la página.) – RenniePet

17

Me gustaría que github tuviera una herramienta integrada para admitir el almacenamiento ocasional del archivo privado para un repositorio público de código abierto. Esto es importante para certificados y almacenes de claves asociados con el código fuente, pero no debe ser visible públicamente.

Idealmente, github tendría algún tipo de repo de almacén de claves que actuaría como un repositorio mini-privado. De esta forma, podría poner sus almacenes de claves privados en un repositorio privado, y solo compartirlos con cuentas a las que se les debería permitir administrar sus cuentas de Google Play y iTunes Connect.

Hasta ese día, decidí almacenar mis archivos de almacén de claves en un repositorio privado gratuito en bitbucket, y luego poner un enlace al repositorio bitbucket en mi repositorio de código abierto github. De esta forma, no se perderá, ya que cualquiera que pueda consultar la fuente puede ver dónde está el almacén de claves, pero tampoco está disponible públicamente.

Github, si estás escuchando, creo que apoyar un repositorio privado gratuito, muy restringido solo para tiendas de claves sería un gran servicio para la comunidad de aplicaciones móviles de código abierto.

+0

GitHub da muchas cosas gratis. Simplemente puede comprar acceso a los repositorios privados. Los requisitos adicionales equivalen a un precio adicional. No cuesta una fortuna, pero la calidad del servicio es muy buena. Así es como GitHub gana dinero. Cuando comienzan a dar todo gratis, pueden cerrar su negocio. –

4

Recientemente tuve la misma pregunta y busqué diferentes opiniones en línea. La mayoría dijo que lo guardasen a distancia, que es lo más obvio que quieres hacer en caso de que tu casa o lugar de trabajo se incendiara (te ríes, pero hay camiones de bomberos por una razón). Ninguno realmente dijo dónde almacenarlo remotamente menos en el repositorio en sí.

Lo que decidí hacer es crear una cuenta de Google para la aplicación de Android (debe tener una ya que la necesita para publicarla en la tienda de juegos) y luego usar gratis 15GB de Google en Google Drive para almacenar todos mis almacenes de claves y cualquier otra aplicación relacionada que no quiera poner en control de fuente, pero definitivamente no necesito perderla. Quizás esto funcione para ti y para otros en el futuro.

Cuestiones relacionadas