connect-vtexid
Version:
VTEX ID Authentication middleware for Connect
129 lines (76 loc) • 2.61 kB
Markdown
connect-vtexid [![Build Status][travis-image]][travis-status]
==============
VTEX ID Authentication middleware for Connect.
Written in **coffee-script**
It automatticaly caches vtexid response and handles errors
## Installation
$ npm install --save connect-vtexid
## Usage
Use it as any other Connect middleware
```js
var connect = require('connect')
var app = connect()
var FIVE_MINUTES = 5 * 60
var options = {
ttl: FIVE_MINUTES
}
var connectVtexid = require('connect-vtexid')
middleware = connectVtexid(options)
app.use(middleware)
```
Can as well be used as a **grunt-contrib-connect** middleware
### Options
#### verbose
*Default: false*
Enables logging
### verbosityLevel
*Default: 1*
Controls the desired verbosity level.
Available options:
- 0: quiet mode
- 1: low verbosity
- 2: medium verbosity
- 3: high verbosity
#### ttl
*Default: 5 minutes*
Value (in seconds) setting how long the cache will live
#### replaceWhiteList
*Default: false*
Overrides default route `white-list` with an array of strings or regexes
Does not replace if values is false (default)
#### addToWhiteList
*Default: []*
Adds routes to current `white-list`.
It can be a string, a regexp or an array containing either strings or regexes
#### redirectUrl
*Default: /admin/login?ReturnUrl=*
String to vtexid redirect page
It is automatically added to the `white-list`
#### logoutUrl
*Default: /admin/logout*
String to logout route
#### useReturnUrl
*Default: true*
Set to false if you do not want to pass the request url as parameter to the redirectUrl
### Custom libs
#### URI White list
`white-list` sets a white list containing every public URI. It receives a `publicUris` parameter that is an array containing
all public uris. Each public uri must be either a String or a RegExp
*Default:*
- */admin/Content*
- */admin/Scripts*
- */meta/whoami*
- */^\/admin\/Site\/Login.aspx/*
#### Redirect url
`return-url` sets the vtexid redirect url.
#### Cookie parser
`cookie-parser` is a custom lib-independent cookie-parsing function.
#### Redirect
`redirect` is a custom lib-independent client-side redirect function.
#### Http errors
`http-errors` is a custom function for rendering error pages:
It receives the `res` object, a `statusCode` as parameter and an optional `customErrorPagePath`
, and returns an `errorRendering` function.
The `errorRendering` function receives an error message `body` and the vtexid `cookie` as parameters
[travis-image]: https://travis-ci.org/vtex/connect-vtexid.svg?branch=v0.1.2
[travis-status]: https://travis-ci.org/vtex/connect-vtexid