Socket
Socket
Sign inDemoInstall

registry-auth-token

Package Overview
Dependencies
6
Maintainers
3
Versions
25
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 3.3.2 to 3.4.0

.npmignore

6

CHANGELOG.md

@@ -5,2 +5,8 @@ # Change Log

## [3.4.0] - 2019-03-20
### Changes
- Enabled legacy auth token to be read from environment variable (Martin Flodin)
## [3.3.2] - 2018-01-26

@@ -7,0 +13,0 @@

25

index.js

@@ -55,6 +55,9 @@ var url = require('url')

function getLegacyAuthInfo (npmrc) {
if (npmrc._auth) {
return {token: npmrc._auth, type: 'Basic'}
if (!npmrc._auth) {
return undefined
}
return undefined
var token = replaceEnvironmentVariable(npmrc._auth)
return {token: token, type: 'Basic'}
}

@@ -84,2 +87,8 @@

function replaceEnvironmentVariable (token) {
return token.replace(/^\$\{?([^}]*)\}?$/, function (fullMatch, envVar) {
return process.env[envVar]
})
}
function getBearerToken (tok) {

@@ -90,6 +99,4 @@ if (!tok) {

// check if bearer token
var token = tok.replace(/^\$\{?([^}]*)\}?$/, function (fullMatch, envVar) {
return process.env[envVar]
})
// check if bearer token is set as environment variable
var token = replaceEnvironmentVariable(tok)

@@ -106,5 +113,3 @@ return {token: token, type: 'Bearer'}

// See https://github.com/npm/npm/blob/v3.10.6/lib/config/set-credentials-by-uri.js#L26
var pass = decodeBase64(password.replace(/^\$\{?([^}]*)\}?$/, function (fullMatch, envVar) {
return process.env[envVar]
}))
var pass = decodeBase64(replaceEnvironmentVariable(password))

@@ -111,0 +116,0 @@ // a basic auth token is base64 encoded 'username:password'

2

package.json
{
"name": "registry-auth-token",
"version": "3.3.2",
"version": "3.4.0",
"description": "Get the auth token set for an npm registry (if any)",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -53,2 +53,38 @@ var fs = require('fs')

})
it('should return legacy auth token defined by reference to an environment variable (with curly braces)', function (done) {
var environmentVariable = '__REGISTRY_AUTH_TOKEN_NPM_TOKEN__'
var content = [
'_auth=${' + environmentVariable + '}',
'registry=http://registry.foobar.eu/'
].join('\n')
process.env[environmentVariable] = 'foobar'
fs.writeFile(npmRcPath, content, function (err) {
var getAuthToken = requireUncached('../index')
assert(!err, err)
assert.deepEqual(getAuthToken(), {token: 'foobar', type: 'Basic'})
delete process.env[environmentVariable]
done()
})
})
it('should return legacy auth token defined by reference to an environment variable (without curly braces)', function (done) {
var environmentVariable = '__REGISTRY_AUTH_TOKEN_NPM_TOKEN__'
var content = [
'_auth=$' + environmentVariable,
'registry=http://registry.foobar.eu/'
].join('\n')
process.env[environmentVariable] = 'foobar'
fs.writeFile(npmRcPath, content, function (err) {
var getAuthToken = requireUncached('../index')
assert(!err, err)
assert.deepEqual(getAuthToken(), {token: 'foobar', type: 'Basic'})
delete process.env[environmentVariable]
done()
})
})
})

@@ -55,0 +91,0 @@

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc