Saltar al contenido

Usando tokens de autenticación en .npmrc

Solución:

Está definitivamente no un comportamiento seguro para colocar el token en cualquier archivo git verificado, incluido .npmrc.

A continuación, se muestran los pasos que puede seguir su equipo para aprovechar de forma segura su token npm.

Hay dos entornos diferentes a considerar:

  1. la máquina de desarrollo local de cada desarrollador
  2. la plataforma de implementación de la aplicación

desarrollador local

Seguir las instrucciones de configuración global que vinculó en su pregunta no es la solución.

Cree el archivo .npmrc similar a las instrucciones “Por proyecto”, pero sustituya su token real con un nombre de variable, con el prefijo $. es decir:

@fontawesome:registry=https://npm.fontawesome.com/
//npm.fontawesome.com/:_authToken=$TOKEN

npm detectará un archivo de variables de entorno llamado .env. Entonces, en un .gitignored .env, agregue su par de valores de clave secreta, es decir:

TOKEN=ABC123

También puede prefijar el nombre de la variable con “NPM_CONFIG_”, de acuerdo con npm-config docs, es decir:

NPM_CONFIG_TOKEN=ABC123

Ahora, cuando el desarrollador se ejecuta npm i, las dependencias de fuentes impresionantes se cargarán desde el repositorio privado.

NOTA: ¡No siga los documentos actuales de npm-config sobre la sintaxis de las variables de entorno! Vea esta respuesta de desbordamiento de pila, es decir:

 BAD npm-config ENVIRONMENT VAR SYNTAX 

${TOKEN}
 GOOD npm-config ENVIRONMENT VAR SYNTAX 

$TOKEN

plataforma de implementación de aplicaciones

Siga todos los pasos de la sección de desarrollo local anterior, MÁS:

  • cree una variable de entorno en la plataforma con el mismo nombre que en el archivo .npmrc.

Si el host de su aplicación es Netlify, consulte sus documentos de Variables de entorno de compilación.

https://docs.npmjs.com/using-private-packages-in-a-ci-cd-workflow

Exporta tu token secreto a tu sesión, por ejemplo, export NPM_TOKEN="00000000-0000-0000-0000-000000000000"

Dentro de tu ~/.npmrc, agregar //registry.npmjs.org/:_authToken=${NPM_TOKEN}

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *