eid-provider v0.2.1
eid-provider
This module is developed to enable rapid deployment of identity based authentication for Node.js by creating a common interface to most of the suppliers for official electronic identification and it allows you to mix and match your suppliers. This is a reusability code port of code that I have contributed to teams-app-eid with some smart addons and international support.
Simple to use
There is only one way of sending data into and out of the modules. Uniformity regardless of service. You can read details of the methods or see some more examples
const eidprovider = require('./eid-provider.js')('frejaeid');
const config = eidprovider.settings.testing;
eidprovider.initialize(config);
eidprovider.authRequest('200101011212').then(function(result){
console.log(result);
});
Supported modules
There are basically right now two main types of integrations: one is working directly with the service apis and the other kind is working with a broker service. The broker services can be usefull if you have many integrations or other sources in your enterprise and you wish to use the same sources for these.
ID-Type | Module | Vendor | Authentication | Signing | Geographies | Readiness |
---|---|---|---|---|---|---|
BankID | bankid | BankID | :heavy_check_mark: | :heavy_check_mark: | :sweden: | Production |
Freja eID | frejaeid | Verisec (Freja eID) | :heavy_check_mark: | :heavy_check_mark: | :sweden: :denmark: :norway: :finland: | Production |
Freja eID Org ID | frejaorgid | Verisec (Freja eID) | :heavy_check_mark: | :heavy_check_mark: | :sweden: :denmark: :norway: :finland: | Production |
Mobilt BankID | ftbankid | Funktionstjänster (CGI) | :heavy_check_mark: | :heavy_check_mark: | :sweden: | Production |
Freja eID | ftfrejaeid | Funktionstjänster (CGI) | :heavy_check_mark: | :heavy_check_mark: | :sweden: :denmark: :norway: :finland: | Production |
Mobilt BankID | gbankid | Svensk e-Identitet | :heavy_check_mark: | :heavy_check_mark: | :sweden: | Production |
Freja eID | gfrejaeid | Svensk e-Identitet | :heavy_check_mark: | :heavy_check_mark: | :sweden: | Stable* |
SITHS Mobile | ghsaid | Svensk e-Identitet | :heavy_check_mark: | :heavy_check_mark: | :sweden: | Production |
Mobilt BankID | gbankid | IDKollen | :heavy_check_mark: | :heavy_check_mark: | :sweden: | Production |
* GrandID do not officially support Freja eID for silent logins. Using some ugly workarounds tbh. Evaluate before production!
The configuration options should be quite obvious as what they do. If you are unsure your supplier will most probably be able to determine what information you need. Most modules have sane values, certificates etc for most testing services and production services however there is no production credentials and you need to strike an agreement with the services yourself to obtain these.