{"_id":"koa-basic-auth","_rev":"37-1ef9e5e22d5096ac6ae1452d98439258","name":"koa-basic-auth","dist-tags":{"next":"2.0.0","latest":"4.0.0"},"versions":{"1.0.0":{"name":"koa-basic-auth","version":"1.0.0","keywords":["koa","auth","authentication","context","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@1.0.0","maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"dist":{"shasum":"d6ff35c4c66ad47a47454f8b9187ef8541e66488","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-1.0.0.tgz","integrity":"sha512-P8/CffI558jcywBtuifPPAgW1pbQHvojAv0BvKPtsuFmVg0qyK0mQFqH5odQAmAscEN8V7N/W5mvmkfgwaoIOA==","signatures":[{"sig":"MEYCIQCL907tdqMLGdSf6LU5rAW3gqghkDVARbjzk4kvhcqX+gIhAKY46C7DoKzIKoON7qwRBEZUIS3QMKWNFlyR9W3pyWlM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","files":["index.js"],"_npmUser":{"name":"tjholowaychuk","email":"tj@vision-media.ca"},"repository":{"url":"koajs/basic-auth","type":"git"},"_npmVersion":"1.3.4","description":"Context .auth getter for parsing basic auth","directories":{},"dependencies":{"mocha":"~1.12.0","should":"~1.2.2","supertest":"~0.7.1"},"devDependencies":{"koa":"0.0.1"}},"1.1.0":{"name":"koa-basic-auth","version":"1.1.0","keywords":["koa","auth","authentication","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@1.1.0","maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"homepage":"https://github.com/koajs/basic-auth","bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"dist":{"shasum":"f46b336a900cca0b4f6ea3dd3e352d687e421e95","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-1.1.0.tgz","integrity":"sha512-br2m13tVJVqgU6KtUEm/5SJ6w/AsLZM2577yhWvO1axGgDeodvxttYmu9Xm0avN4NUjJTiM/twKlC74QmhIWAg==","signatures":[{"sig":"MEUCIQDVvp+r05Jfz44gMhEyO5Hqk75zDOfkuBwjZW/rbZCzSQIgDSLde4NGSY8yoUlQqztc/DTrjNydkqT7jPOhsm2u/xc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","files":["index.js"],"_npmUser":{"name":"tjholowaychuk","email":"tj@vision-media.ca"},"repository":{"url":"git://github.com/koajs/basic-auth","type":"git"},"_npmVersion":"1.3.15","description":"Blanket basic auth middleware for koa","directories":{},"dependencies":{"basic-auth":"0.0.1"},"devDependencies":{"koa":"koajs/koa","mocha":"~1.12.0","should":"~1.2.2","supertest":"~0.7.1"}},"1.1.1":{"name":"koa-basic-auth","version":"1.1.1","keywords":["koa","auth","authentication","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@1.1.1","maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"homepage":"https://github.com/koajs/basic-auth","bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"dist":{"shasum":"c5302e2490897ef8676ace647e528284f10461ab","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-1.1.1.tgz","integrity":"sha512-YAgOGoKErLokyvIyYH6pGXUdBuOgzKZVsUAIpDRTYray2sLPzMgsWo4gS/XT16a9wNa0DbQNQCUh762GdGwTsQ==","signatures":[{"sig":"MEUCIQCffhtJFWUCb8l99dRgmJL3VOV5Y1Mi/M/43Jr3aBK4swIgX9imUAdCWlNoRFRsV+OL5E19vvgsbU5NhfklovuPyE0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","files":["index.js"],"scripts":{"test":"make test"},"_npmUser":{"name":"tjholowaychuk","email":"tj@vision-media.ca"},"repository":{"url":"git://github.com/koajs/basic-auth","type":"git"},"_npmVersion":"1.3.23","description":"Blanket basic auth middleware for koa","directories":{},"dependencies":{"basic-auth":"0.0.1"},"devDependencies":{"koa":"koajs/koa","mocha":"~1.12.0","supertest":"~0.7.1"}},"1.1.2":{"name":"koa-basic-auth","version":"1.1.2","keywords":["koa","auth","authentication","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@1.1.2","maintainers":[{"name":"tjholowaychuk","email":"tj@vision-media.ca"},{"name":"jongleberry","email":"jonathanrichardong@gmail.com"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"dead_horse","email":"dead_horse@qq.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"eivifj","email":"eivind.fjeldstad@gmail.com"},{"name":"aheckmann","email":"aaron.heckmann+github@gmail.com"}],"homepage":"https://github.com/koajs/basic-auth","bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"dist":{"shasum":"1879285845a7af9de0b4d1e90036ef48d998db71","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-1.1.2.tgz","integrity":"sha512-DMkfSQnIvfBhY5Vx0ePYWuCUV/LVW2pHQCZHFfCBvsMaWNSqbb+ZxYMAdJb7Sn8jz/gXa8Xm/C5v7Yy/4GoyRw==","signatures":[{"sig":"MEQCIB7GjBhzK2Dg5iHCWD9P9GKiq5OV+dXq4rweSz1uFTpMAiBmtWK2nHODE341VV6wZNYLy6oEk9Zqp1Z3zs5nSQjOMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","files":["index.js"],"_shasum":"1879285845a7af9de0b4d1e90036ef48d998db71","gitHead":"7762cc45588f03c3c90ac11ceb6b4462f20c1a4c","scripts":{"test":"NODE_ENV=test mocha --harmony-generators --reporter spec","test-cov":"NODE_ENV=test node --harmony-generators ./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha","test-travis":"NODE_ENV=test node --harmony-generators ./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha --report lcovonly"},"_npmUser":{"name":"jongleberry","email":"jonathanrichardong@gmail.com"},"repository":{"url":"https://github.com/koajs/basic-auth","type":"git"},"_npmVersion":"1.4.26","description":"Blanket basic auth middleware for koa","directories":{},"dependencies":{"basic-auth":"^1.0.0"},"devDependencies":{"koa":"*","mocha":"^1.12.0","supertest":"0","istanbul-harmony":"0"}},"2.0.0":{"name":"koa-basic-auth","version":"2.0.0","keywords":["koa","auth","authentication","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@2.0.0","maintainers":[{"name":"aheckmann","email":"aaron.heckmann+github@gmail.com"},{"name":"coderhaoxin","email":"coderhaoxin@outlook.com"},{"name":"dead_horse","email":"dead_horse@qq.com"},{"name":"eivifj","email":"eivind.fjeldstad@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"jongleberry","email":"jonathanrichardong@gmail.com"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"homepage":"https://github.com/koajs/basic-auth#readme","bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"dist":{"shasum":"5760473e5196e5cfcf5f1d6d548f4b4893aca867","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-2.0.0.tgz","integrity":"sha512-QXnOtZFMMexKH9ToB262QNMQWcdNbiyu3iJt/LrV1cwUuHcd0TZvxRV9OXF8AbGvnaOsChURVTMdOQuGcUxIwQ==","signatures":[{"sig":"MEQCIA4ciwQZACVot/W0WT6e4UHWP69rbTv+ug+8iJvZtXGCAiAQ8y77x1mr3DGMiPbCkgJcoF8IGEvv8NURReW+8tsS1w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","files":["index.js"],"_shasum":"5760473e5196e5cfcf5f1d6d548f4b4893aca867","gitHead":"c6896b0448331f87d77710106a1f617b65327f8e","scripts":{"test":"NODE_ENV=test mocha --reporter spec","test-cov":"NODE_ENV=test istanbul cover ./node_modules/.bin/_mocha","test-travis":"NODE_ENV=test istanbul cover ./node_modules/.bin/_mocha --report lcovonly"},"_npmUser":{"name":"coderhaoxin","email":"coderhaoxin@outlook.com"},"repository":{"url":"git+https://github.com/koajs/basic-auth.git","type":"git"},"_npmVersion":"3.7.3","description":"Blanket basic auth middleware for koa","directories":{},"_nodeVersion":"5.8.0","dependencies":{"basic-auth":"^1.0.3"},"devDependencies":{"koa":"^2.0.0-alpha.3","mocha":"2","istanbul":"0","supertest":"1"},"_npmOperationalInternal":{"tmp":"tmp/koa-basic-auth-2.0.0.tgz_1458266876635_0.6356980358250439","host":"packages-13-west.internal.npmjs.com"}},"3.0.0":{"name":"koa-basic-auth","version":"3.0.0","keywords":["koa","auth","authentication","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@3.0.0","maintainers":[{"name":"aheckmann","email":"aaron.heckmann+github@gmail.com"},{"name":"coderhaoxin","email":"haoxins@outlook.com"},{"name":"dead_horse","email":"dead_horse@qq.com"},{"name":"eivifj","email":"eivind.fjeldstad@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"jongleberry","email":"jonathanrichardong@gmail.com"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"homepage":"https://github.com/koajs/basic-auth#readme","bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"dist":{"shasum":"05967f2320735264d193e37806634615206a710b","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-3.0.0.tgz","fileCount":4,"integrity":"sha512-8j4ddZCHrGB4tMC+3NYlO1ejAv/qCPouhymCexOIxzUhZ3wSaK1VdafohvUBSNbWD719lsi30n9TaW8QzyS3/A==","signatures":[{"sig":"MEYCIQDCMokf4/I2f9gMaktA6IRK4xB6rD+6nyH/4D9KL5u85AIhAOeVgrSKRg65KJTBDVgjH3qJsf0eaW4NxUjHDNv+SbM+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3563,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+8rxCRA9TVsSAnZWagAAk+gP/ivwpQ9TVY+0k0kHb82r\nK+XeNms+LwZbhUF/jC3nr6BzgSgZocBjNluUaJQsOGe4ATv1db6AX35luBCc\npx+vcDON3ALcKxCKZsPhQ87t41paczVgh3dP8ZfWe3r74pB/x2A3/gBmK3rQ\niGHDXtQ6XloQhWAUnOiXuMIffCUWBxm3k+rXHfRC90GNgsiZVfRWkPVnaLc3\naN4pkIEUwlV7b+GPUNEtooQPw8v8e+u/m+qbXtrfj7BlZSgY+HDP6MNBK0ui\n/NPJ2u0DxPfp2NWGl21zHyZUJTTAWaRvaN9YDbYftfNyQrJa8w1ZWkZ8vI/R\nZa1WdDhhTv7d1NBgMUVrJZWO8iwFwTFPV0ZEj6gXvsA3clN/mHLpGkqVD13B\n/VeVd6rumsOYhBTdS6TiJ7LYpvtmxVn3MXaGk3KELWQSvMElEfTsqcono1c+\n01mpOGz4IOAmJWS/R2UXRzY2cUBOgeWuvrA0XgECD2/XSwRAOKLB/f+2eYMB\niwB2uxB1qsG83ghzqpojB6JhfNNwbqSabNNv3xXYghW3n1eIOAykY3rZfoCn\nz8GcBy7/+LPPV3aNo5zZYM8mxENPxc5Vzr3/sgFGltBPBo5SWcF4vSnzHest\nwcskD5HSEavIKcbALD5g/lofmMaTdf4yUti5PswP/y7gk8I9dHQ0q+AgjIHB\n2Vi0\r\n=CmQQ\r\n-----END PGP SIGNATURE-----\r\n"},"files":["index.js"],"gitHead":"f34e7aa35b6e9314ff097db5018d21a7bb647fa6","scripts":{"test":"NODE_ENV=test mocha --reporter spec --exit","test-cov":"NODE_ENV=test istanbul cover ./node_modules/.bin/_mocha -- --exit","test-travis":"NODE_ENV=test istanbul cover ./node_modules/.bin/_mocha --report lcovonly -- --exit"},"_npmUser":{"name":"coderhaoxin","email":"haoxins@outlook.com"},"repository":{"url":"git+https://github.com/koajs/basic-auth.git","type":"git"},"_npmVersion":"5.6.0","description":"Blanket basic auth middleware for koa","directories":{},"_nodeVersion":"10.0.0","dependencies":{"basic-auth":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.5.1","mocha":"^5.1.1","istanbul":"^0.4.5","supertest":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/koa-basic-auth_3.0.0_1526450928428_0.3881044590133105","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"koa-basic-auth","version":"4.0.0","keywords":["koa","auth","authentication","basicauth","basic auth"],"license":"MIT","_id":"koa-basic-auth@4.0.0","maintainers":[{"name":"aheckmann","email":"aaron.heckmann+github@gmail.com"},{"name":"coderhaoxin","email":"haoxins@icloud.com"},{"name":"dead_horse","email":"dead_horse@qq.com"},{"name":"eivifj","email":"eivind.fjeldstad@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"jongleberry","email":"jonathanrichardong@gmail.com"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"niftylettuce","email":"niftylettuce@gmail.com"},{"name":"tjholowaychuk","email":"tj@vision-media.ca"}],"homepage":"https://github.com/koajs/basic-auth#readme","bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"dist":{"shasum":"7df593771aeb5fe09c6259db206e2e627da64616","tarball":"https://registry.npmjs.org/koa-basic-auth/-/koa-basic-auth-4.0.0.tgz","fileCount":4,"integrity":"sha512-eV1sGVAizDuFWNpY43VF3Z1ND4PotQZB/igxHNrcJXzXw+Flmj8Uv+4hP9LyNXyvqLJz/X5bmXeMu84AAGD9Jw==","signatures":[{"sig":"MEYCIQCrSILK960FlE8yvck/tWpEPymmlOIrQOIM5V00o8M+MQIhAJwdx7hxMeqtfZUmrF5beztxAsAkXl/O105zIVCzrV5X","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":3939,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcMxmFCRA9TVsSAnZWagAAEGkP/0LUfFc5mJkk7561UXbi\nqB7oVqFGS3YKLxR6XC/LcvX4THmulpfVZ3EIWW40DF+f0wq3zHE5HKF6RcsY\nkTRxbpGOM1hB73dQKReBJcUhtfO7TWdvEhQXm3n5Ih3XMkEgt44x5aDS0jMe\ncftWPHTu3czz5h1Cdpbmr6Q5b96JkUrDRqFU6gwQzadsWIG2th60s4BoTtJj\n6yFI6DMjSw4ELE0QwtjfuaGhbhvhG7EEtd3yfNt75QnwPdEm9qL64XwA3Qnb\n2Z3hF2QqspAuf/jiKKS/wycqVYr50HV7NihNOqWwD2kjLoDenAS2VFMuG1on\nzn6KJK6fJPVffyfN6CVg+9LdGLFn3UcnoJ6AlLqaBTYFmPB0iwUwAhs9gr4M\nN5xDNsDOkyVzMEdG2mHIeCOXiHb7tbYFsqHsYZw3ZyZPIIbQWF5YLXr0d0S6\ni0bY7HniPRgkjEK/n9hMb/vF7nmIKEonvwQCKMlT4gSq0WHMKSFs3wj3dfrS\nGZ1Jh1ra6UVMpYdboj0lqASIY+dMfAgY9WYSJyd5RBltn5eTDEutwsQQbxYM\nqwno0IokUrP9S3sbqUXvsbrQ0gqtJPKkowcVZgdLnf/bcoRDLBQWcmsHxNsp\nmwzjAQqTWCi4+9ouf+z2PUCm5QZ9FQtMN9j/x53YRZZJ181T/JsjezBC0MAc\nVKCA\r\n=hiJ6\r\n-----END PGP SIGNATURE-----\r\n"},"gitHead":"453d2d51bc2a5904746f572f00c4eb0c918bb8b9","scripts":{"test":"NODE_ENV=test mocha --reporter spec --exit","test-cov":"NODE_ENV=test istanbul cover ./node_modules/.bin/_mocha -- --exit","test-travis":"NODE_ENV=test istanbul cover ./node_modules/.bin/_mocha --report lcovonly -- --exit"},"_npmUser":{"name":"niftylettuce","email":"niftylettuce@gmail.com"},"repository":{"url":"git+https://github.com/koajs/basic-auth.git","type":"git"},"_npmVersion":"6.4.1","description":"Blanket basic auth middleware for koa","directories":{},"_nodeVersion":"8.12.0","dependencies":{"tsscmp":"^1.0.6","basic-auth":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"koa":"^2.5.1","mocha":"^5.1.1","istanbul":"^0.4.5","supertest":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/koa-basic-auth_4.0.0_1546852740859_0.1809166247691738","host":"s3://npm-registry-packages"}}},"time":{"created":"2013-08-20T03:32:50.439Z","modified":"2026-05-11T19:09:40.322Z","1.0.0":"2013-08-20T03:32:51.997Z","1.1.0":"2013-11-30T19:37:59.220Z","1.1.1":"2014-01-19T21:25:05.800Z","1.1.2":"2014-09-15T06:29:11.915Z","2.0.0":"2016-03-18T02:07:57.035Z","3.0.0":"2018-05-16T06:08:48.738Z","4.0.0":"2019-01-07T09:19:00.946Z"},"bugs":{"url":"https://github.com/koajs/basic-auth/issues"},"license":"MIT","homepage":"https://github.com/koajs/basic-auth#readme","keywords":["koa","auth","authentication","basicauth","basic auth"],"repository":{"url":"git+https://github.com/koajs/basic-auth.git","type":"git"},"description":"Blanket basic auth middleware for koa","maintainers":[{"email":"haoxinst@gmail.com","name":"coderhaoxin"},{"email":"niftylettuce@gmail.com","name":"niftylettuce"},{"email":"julian@juliangruber.com","name":"juliangruber"},{"email":"eivind.fjeldstad@gmail.com","name":"eivifj"},{"email":"dead_horse@qq.com","name":"dead_horse"},{"email":"tj@vision-media.ca","name":"tjholowaychuk"},{"email":"jonathanrichardong@gmail.com","name":"jongleberry"},{"email":"fengmk2@gmail.com","name":"fengmk2"},{"email":"npm@titanism.com","name":"titanism"}],"readme":"# koa-basic-auth [![Build Status](https://travis-ci.org/koajs/basic-auth.png)](https://travis-ci.org/koajs/basic-auth)\n\n  Add simple \"blanket\" basic auth with username / password. If you require\n  anything more specific just use the [basic-auth](https://github.com/visionmedia/node-basic-auth) module.\n\n  **v4.x+ Breaking Change:** This package no longer requires both a username and a password.  Either or is supported, see [#39](https://github.com/jshttp/basic-auth/issues/39) for more insight.\n\n## Installation\n\n```js\n$ npm install koa-basic-auth\n```\n\n## Example\n\n  Password protect downstream middleware:\n\n```js\nconst auth = require('koa-basic-auth');\nconst Koa = require('koa');\nconst app = new Koa();\n\n// custom 401 handling\napp.use(async (ctx, next) => {\n  try {\n    await next();\n  } catch (err) {\n    if (401 == err.status) {\n      ctx.status = 401;\n      ctx.set('WWW-Authenticate', 'Basic');\n      ctx.body = 'cant haz that';\n    } else {\n      throw err;\n    }\n  }\n});\n\n// require auth\napp.use(auth({ name: 'tj', pass: 'tobi' }));\n\n// secret response\napp.use(async (ctx) => {\n  ctx.body = 'secret';\n});\n\napp.listen(3000, function () {\n  console.log('listening on port 3000');\n});\n```\n\n  Example request:\n\n    $ curl -H \"Authorization: basic dGo6dG9iaQ==\" http://localhost:3000/ -i\n    HTTP/1.1 200 OK\n    X-Powered-By: koa\n    Content-Type: text/plain; charset=utf-8\n    Content-Length: 6\n    Date: Sat, 30 Nov 2013 19:35:17 GMT\n    Connection: keep-alive\n\n    secret\n\n Using the [mount](https://github.com/koajs/mount) middleware you may specify auth for a given prefix:\n\n```js\nconst mount = require('koa-mount');\nconst auth = require('koa-basic-auth');\n\napp.use(mount('/admin', auth({ name: 'tobi', pass: 'ferret' })));\n```\n\n## License\n\n  MIT\n","readmeFilename":"Readme.md","users":{"dofy":true,"akiva":true,"mailonline":true}}