@affinidi/cli 2.15.0 ā 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -4
- package/dist/commands/start.d.ts +5 -0
- package/dist/commands/start.js +24 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/common/constants.d.ts +7 -0
- package/dist/common/constants.js +8 -0
- package/dist/common/constants.js.map +1 -1
- package/dist/helpers/token.d.ts +15 -15
- package/dist/services/affinidi/auth/auth-error-message.d.ts +1 -0
- package/dist/services/affinidi/auth/auth-error-message.js +15 -0
- package/dist/services/affinidi/auth/auth-error-message.js.map +1 -0
- package/dist/services/affinidi/auth/bff-auth-provider.d.ts +1 -6
- package/dist/services/affinidi/auth/bff-auth-provider.js +6 -19
- package/dist/services/affinidi/auth/bff-auth-provider.js.map +1 -1
- package/dist/services/affinidi/auth/types.d.ts +3 -1
- package/dist/services/affinidi/bff-service.d.ts +3 -2
- package/dist/services/affinidi/bff-service.js +4 -4
- package/dist/services/affinidi/bff-service.js.map +1 -1
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Affinidi CLI is a developer tool to easily manage your projects and integration
|
|
|
4
4
|
|
|
5
5
|
## Requirements
|
|
6
6
|
|
|
7
|
-
- [NodeJs
|
|
7
|
+
- [NodeJs](https://nodejs.org) 22 (22.23.4 or later), 24 (24.22.1 or later), or 26.12.1 and later
|
|
8
8
|
- A Chromium-based browser such as [Chrome](https://www.google.com/chrome/), [Microsoft Edge](https://www.microsoft.com/edge/download), [Opera](https://www.opera.com/) or [Brave](https://brave.com/)
|
|
9
9
|
- To generate reference applications you will also need [git](https://git-scm.com/)
|
|
10
10
|
|
|
@@ -163,16 +163,22 @@ The first thing you will want to do in the CLI to access most features is to aut
|
|
|
163
163
|
|
|
164
164
|
### Authenticating to Affinidi
|
|
165
165
|
|
|
166
|
-
|
|
166
|
+
You can authenticate as a builder with Affinidi Vault or with a Google, Microsoft, Apple or GitHub account.
|
|
167
167
|
|
|
168
|
-
|
|
168
|
+
To use Affinidi Vault, install the [extension](https://chrome.google.com/webstore/detail/fejpjjkbaklcdcibmkbmpanjbiihclon), open the extension popup and follow the registration instructions. You can find a user guide to set up your Affinidi Vault [here](https://docs.affinidi.com/docs/get-started/#setup-affinidi-vault).
|
|
169
169
|
|
|
170
|
-
|
|
170
|
+
Authenticate in the CLI with:
|
|
171
171
|
|
|
172
172
|
```bash
|
|
173
173
|
affinidi start
|
|
174
174
|
```
|
|
175
175
|
|
|
176
|
+
To log in with a specific provider, pass it with `--provider`:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
affinidi start --provider github
|
|
180
|
+
```
|
|
181
|
+
|
|
176
182
|
### Understanding commands
|
|
177
183
|
|
|
178
184
|
Commands in Affinidi CLI have the following structure:
|
package/dist/commands/start.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { BaseCommand } from '../common/base-command.js';
|
|
2
|
+
import { LoginProviders } from '../common/constants.js';
|
|
2
3
|
export declare class Start extends BaseCommand<typeof Start> {
|
|
3
4
|
static summary: string;
|
|
4
5
|
static examples: string[];
|
|
6
|
+
static flags: {
|
|
7
|
+
provider: import("@oclif/core/interfaces").OptionFlag<LoginProviders | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
+
};
|
|
5
9
|
run(): Promise<void>;
|
|
10
|
+
private logProviderHint;
|
|
6
11
|
}
|
package/dist/commands/start.js
CHANGED
|
@@ -1,12 +1,17 @@
|
|
|
1
|
-
import { ux } from '@oclif/core';
|
|
1
|
+
import { Flags, ux } from '@oclif/core';
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
import { BaseCommand } from '../common/base-command.js';
|
|
4
|
+
import { LoginProviders } from '../common/constants.js';
|
|
4
5
|
import { bffService } from '../services/affinidi/bff-service.js';
|
|
5
6
|
export class Start extends BaseCommand {
|
|
6
7
|
async run() {
|
|
8
|
+
const { flags } = await this.parse(Start);
|
|
9
|
+
// No prompt here: existing scripts run `start` without flags and must not block on input.
|
|
10
|
+
const { provider } = flags;
|
|
11
|
+
this.logProviderHint(provider);
|
|
7
12
|
ux.action.start('Authenticating in browser');
|
|
8
13
|
try {
|
|
9
|
-
await bffService.login();
|
|
14
|
+
await bffService.login(provider);
|
|
10
15
|
const activeProject = await bffService.getActiveProject();
|
|
11
16
|
ux.action.stop('Authenticated successfully!');
|
|
12
17
|
this.log(`\nYour active project has been set to the project ${chalk.underline(activeProject.name)} with ID ${chalk.underline(activeProject.id)}` +
|
|
@@ -19,7 +24,23 @@ export class Start extends BaseCommand {
|
|
|
19
24
|
this.error(error);
|
|
20
25
|
}
|
|
21
26
|
}
|
|
27
|
+
// Surfaces --provider to users who would otherwise only find it via --help.
|
|
28
|
+
logProviderHint(provider) {
|
|
29
|
+
if (provider) {
|
|
30
|
+
this.log(`Logging in with ${chalk.bold(provider)}.\n`);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const usage = `affinidi start --provider <${Object.values(LoginProviders).join('|')}>`;
|
|
34
|
+
this.log(`Logging in via the default login page.\nš” To log in with a specific provider run: ${usage}\n`);
|
|
35
|
+
}
|
|
22
36
|
}
|
|
23
37
|
Start.summary = 'Log in to Affinidi';
|
|
24
|
-
Start.examples = ['<%= config.bin %> <%= command.id %>'];
|
|
38
|
+
Start.examples = ['<%= config.bin %> <%= command.id %>', '<%= config.bin %> <%= command.id %> --provider github'];
|
|
39
|
+
Start.flags = {
|
|
40
|
+
provider: Flags.option({
|
|
41
|
+
summary: 'Login provider to authenticate with',
|
|
42
|
+
description: 'If omitted, the default login page opens, same as --provider affinidi.',
|
|
43
|
+
options: Object.values(LoginProviders),
|
|
44
|
+
})(),
|
|
45
|
+
};
|
|
25
46
|
//# sourceMappingURL=start.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAEhE,MAAM,OAAO,KAAM,SAAQ,WAAyB;IAW3C,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACzC,0FAA0F;QAC1F,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;QAC1B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;QAE9B,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;QAC5C,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAChC,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,gBAAgB,EAAE,CAAA;YACzD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;YAC7C,IAAI,CAAC,GAAG,CACN,qDAAqD,KAAK,CAAC,SAAS,CAClE,aAAa,CAAC,IAAI,CACnB,YAAY,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE;gBAC9C,0EAA0E;gBAC1E,yCAAyC,KAAK,CAAC,OAAO,CAAC,gCAAgC,CAAC,EAAE;gBAC1F,4CAA4C,KAAK,CAAC,OAAO,CACvD,iDAAiD,CAClD,IAAI,CACR,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;YACxC,IAAI,CAAC,KAAK,CAAC,KAAe,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,4EAA4E;IACpE,eAAe,CAAC,QAAyB;QAC/C,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,mBAAmB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YACtD,OAAM;QACR,CAAC;QAED,MAAM,KAAK,GAAG,8BAA8B,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;QACtF,IAAI,CAAC,GAAG,CAAC,sFAAsF,KAAK,IAAI,CAAC,CAAA;IAC3G,CAAC;;AA9CM,aAAO,GAAG,oBAAoB,CAAA;AAC9B,cAAQ,GAAG,CAAC,qCAAqC,EAAE,uDAAuD,CAAC,CAAA;AAC3G,WAAK,GAAG;IACb,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,qCAAqC;QAC9C,WAAW,EAAE,wEAAwE;QACrF,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;KACvC,CAAC,EAAE;CACL,CAAA"}
|
|
@@ -20,6 +20,13 @@ export declare enum RefAppProvider {
|
|
|
20
20
|
AFFINIDI = "affinidi",
|
|
21
21
|
AUTH0 = "auth0"
|
|
22
22
|
}
|
|
23
|
+
export declare enum LoginProviders {
|
|
24
|
+
AFFINIDI = "affinidi",
|
|
25
|
+
GOOGLE = "google",
|
|
26
|
+
MICROSOFT = "microsoft",
|
|
27
|
+
APPLE = "apple",
|
|
28
|
+
GITHUB = "github"
|
|
29
|
+
}
|
|
23
30
|
export interface Auth0Config {
|
|
24
31
|
callbackUrl: string;
|
|
25
32
|
webOriginUrl: string;
|
package/dist/common/constants.js
CHANGED
|
@@ -25,6 +25,14 @@ export var RefAppProvider;
|
|
|
25
25
|
RefAppProvider["AFFINIDI"] = "affinidi";
|
|
26
26
|
RefAppProvider["AUTH0"] = "auth0";
|
|
27
27
|
})(RefAppProvider || (RefAppProvider = {}));
|
|
28
|
+
export var LoginProviders;
|
|
29
|
+
(function (LoginProviders) {
|
|
30
|
+
LoginProviders["AFFINIDI"] = "affinidi";
|
|
31
|
+
LoginProviders["GOOGLE"] = "google";
|
|
32
|
+
LoginProviders["MICROSOFT"] = "microsoft";
|
|
33
|
+
LoginProviders["APPLE"] = "apple";
|
|
34
|
+
LoginProviders["GITHUB"] = "github";
|
|
35
|
+
})(LoginProviders || (LoginProviders = {}));
|
|
28
36
|
export var ServiceResourceIds;
|
|
29
37
|
(function (ServiceResourceIds) {
|
|
30
38
|
ServiceResourceIds["IAM_PROJECTS"] = "iam.resource.Projects";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;AACjB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAED,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,gCAAW,CAAA;IACX,8BAAS,CAAA;AACX,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,kCAAW,CAAA;AACb,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,iCAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAQD,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,4DAAsC,CAAA;IACtC,wEAAkD,CAAA;AACpD,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,yBAAW,CAAA;AACb,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;IACf,sCAAe,CAAA;AACjB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAED,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,gCAAW,CAAA;IACX,8BAAS,CAAA;AACX,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,kCAAW,CAAA;AACb,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,iCAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,mCAAiB,CAAA;IACjB,yCAAuB,CAAA;IACvB,iCAAe,CAAA;IACf,mCAAiB,CAAA;AACnB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAQD,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,4DAAsC,CAAA;IACtC,wEAAkD,CAAA;AACpD,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,yBAAW,CAAA;AACb,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
|
package/dist/helpers/token.d.ts
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { JsonWebKeySetDto } from '@affinidi-tdk/iam-client';
|
|
2
2
|
import { SupportedAlgorithms } from '../common/constants.js';
|
|
3
3
|
export declare function generateKeyPair(keyId: string, algorithm: string, passphrase?: string): {
|
|
4
|
-
publicKey: string |
|
|
5
|
-
privateKey: string |
|
|
4
|
+
publicKey: string | NonSharedBuffer;
|
|
5
|
+
privateKey: string | NonSharedBuffer;
|
|
6
6
|
jwks: {
|
|
7
7
|
keys: {
|
|
8
|
-
crv?: string
|
|
9
|
-
d?: string
|
|
10
|
-
dp?: string
|
|
11
|
-
dq?: string
|
|
12
|
-
e?: string
|
|
13
|
-
k?: string
|
|
14
|
-
kty?: string
|
|
15
|
-
n?: string
|
|
16
|
-
p?: string
|
|
17
|
-
q?: string
|
|
18
|
-
qi?: string
|
|
19
|
-
x?: string
|
|
20
|
-
y?: string
|
|
8
|
+
crv?: string;
|
|
9
|
+
d?: string;
|
|
10
|
+
dp?: string;
|
|
11
|
+
dq?: string;
|
|
12
|
+
e?: string;
|
|
13
|
+
k?: string;
|
|
14
|
+
kty?: string;
|
|
15
|
+
n?: string;
|
|
16
|
+
p?: string;
|
|
17
|
+
q?: string;
|
|
18
|
+
qi?: string;
|
|
19
|
+
x?: string;
|
|
20
|
+
y?: string;
|
|
21
21
|
use: string;
|
|
22
22
|
kid: string;
|
|
23
23
|
alg: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const authErrorMessage: (type?: string, description?: string) => string;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Maps the error the BFF reports on the login callback to what the user should do next.
|
|
2
|
+
export const authErrorMessage = (type, description) => {
|
|
3
|
+
if (type !== 'access_denied') {
|
|
4
|
+
return 'Unexpected error occurred';
|
|
5
|
+
}
|
|
6
|
+
switch (description) {
|
|
7
|
+
case 'request_declined':
|
|
8
|
+
return 'You have declined access to your data. Granting access to your data is necessary to avail our services.';
|
|
9
|
+
case 'terms_declined':
|
|
10
|
+
return `You must accept the Terms and Conditions to use Affinidi CLI. Run 'affinidi start' to try again.`;
|
|
11
|
+
default:
|
|
12
|
+
return 'Access denied.';
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=auth-error-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-error-message.js","sourceRoot":"","sources":["../../../../src/services/affinidi/auth/auth-error-message.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAa,EAAE,WAAoB,EAAU,EAAE;IAC9E,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;QAC7B,OAAO,2BAA2B,CAAA;IACpC,CAAC;IAED,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,kBAAkB;YACrB,OAAO,yGAAyG,CAAA;QAClH,KAAK,gBAAgB;YACnB,OAAO,kGAAkG,CAAA;QAC3G;YACE,OAAO,gBAAgB,CAAA;IAC3B,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import { KeyLike } from 'jose';
|
|
2
1
|
import { AuthProvider, AuthProviderConfig } from './types.js';
|
|
3
2
|
export declare class BFFAuthProvider implements AuthProvider {
|
|
4
3
|
private readonly logger;
|
|
5
4
|
constructor({ logger }: AuthProviderConfig);
|
|
6
|
-
authenticate({ privateKey, publicKey }:
|
|
7
|
-
privateKey: KeyLike;
|
|
8
|
-
publicKey: KeyLike;
|
|
9
|
-
}): Promise<string>;
|
|
5
|
+
authenticate({ privateKey, publicKey, provider, }: Parameters<AuthProvider['authenticate']>[0]): Promise<string>;
|
|
10
6
|
/**
|
|
11
7
|
* Handles `Success` case when the user accepts
|
|
12
8
|
* the access to the personal data.
|
|
@@ -25,6 +21,5 @@ export declare class BFFAuthProvider implements AuthProvider {
|
|
|
25
21
|
* @private
|
|
26
22
|
*/
|
|
27
23
|
private handleError;
|
|
28
|
-
private generateErrorMessage;
|
|
29
24
|
private shutDownServer;
|
|
30
25
|
}
|
|
@@ -3,6 +3,7 @@ import express from 'express';
|
|
|
3
3
|
import helmet from 'helmet';
|
|
4
4
|
import open from 'open';
|
|
5
5
|
import { check } from 'tcp-port-used';
|
|
6
|
+
import { authErrorMessage } from './auth-error-message.js';
|
|
6
7
|
import { authResultPage } from './auth-result-page.js';
|
|
7
8
|
import { JWKToPem, decryptSessionIdWithPrivateKey } from '../../../helpers/jwk.js';
|
|
8
9
|
import { credentialsVault } from '../../credentials-vault.js';
|
|
@@ -12,14 +13,14 @@ export class BFFAuthProvider {
|
|
|
12
13
|
constructor({ logger }) {
|
|
13
14
|
this.logger = logger;
|
|
14
15
|
}
|
|
15
|
-
async authenticate({ privateKey, publicKey }) {
|
|
16
|
+
async authenticate({ privateKey, publicKey, provider, }) {
|
|
16
17
|
const port = 64287;
|
|
17
18
|
const isPortInUse = await check(config.redirectPort);
|
|
18
19
|
if (isPortInUse) {
|
|
19
20
|
throw new Error(`\nš„ Port [${port}] is unavailable. Affinidi CLI is currently relying on it.\n` +
|
|
20
21
|
`Please close the process that is using port [${port}] and try again.`);
|
|
21
22
|
}
|
|
22
|
-
const authUrl = await bffService.postAuthUrl(await JWKToPem(publicKey));
|
|
23
|
+
const authUrl = await bffService.postAuthUrl(await JWKToPem(publicKey), provider);
|
|
23
24
|
const state = authUrl.searchParams.get('state');
|
|
24
25
|
if (!state) {
|
|
25
26
|
throw new Error('Unexpected error occurred. state parameter missing');
|
|
@@ -79,11 +80,11 @@ export class BFFAuthProvider {
|
|
|
79
80
|
await credentialsVault.setSessionId(sessionId);
|
|
80
81
|
this.logger.debug('Session stored in vault');
|
|
81
82
|
resolve(sessionId);
|
|
82
|
-
res.end(authResultPage('Logged in successfully', 'Head back to the terminal to continue using Affinidi CLI.<br><br>You can also access our services from the <a href="https://portal.affinidi.com" target="_blank">
|
|
83
|
+
res.end(authResultPage('Logged in successfully', 'Head back to the terminal to continue using Affinidi CLI.<br><br>You can also access our services from the <a href="https://portal.affinidi.com" target="_blank" rel="noopener noreferrer">Affinidi Portal</a>'));
|
|
83
84
|
}
|
|
84
85
|
catch (error) {
|
|
85
86
|
this.logger.info(error);
|
|
86
|
-
const errorMessage =
|
|
87
|
+
const errorMessage = authErrorMessage();
|
|
87
88
|
reject(errorMessage);
|
|
88
89
|
res.end(authResultPage('Login failed', errorMessage));
|
|
89
90
|
}
|
|
@@ -100,24 +101,10 @@ export class BFFAuthProvider {
|
|
|
100
101
|
const { res, req, reject, timeout } = params;
|
|
101
102
|
const { type, description } = req.query;
|
|
102
103
|
clearTimeout(timeout);
|
|
103
|
-
const errorMessage =
|
|
104
|
+
const errorMessage = authErrorMessage(type, description);
|
|
104
105
|
reject(errorMessage);
|
|
105
106
|
res.end(authResultPage('Login failed', errorMessage));
|
|
106
107
|
}
|
|
107
|
-
generateErrorMessage(type, errorDescription) {
|
|
108
|
-
let errorMessage;
|
|
109
|
-
switch (type) {
|
|
110
|
-
case 'access_denied':
|
|
111
|
-
errorMessage =
|
|
112
|
-
errorDescription === 'request_declined'
|
|
113
|
-
? 'You have declined access to your data. Granting access to your data is necessary to avail our services.'
|
|
114
|
-
: 'Access denied.';
|
|
115
|
-
break;
|
|
116
|
-
default:
|
|
117
|
-
errorMessage = 'Unexpected error occurred';
|
|
118
|
-
}
|
|
119
|
-
return errorMessage;
|
|
120
|
-
}
|
|
121
108
|
shutDownServer(server) {
|
|
122
109
|
server.close((error) => {
|
|
123
110
|
if (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bff-auth-provider.js","sourceRoot":"","sources":["../../../../src/services/affinidi/auth/bff-auth-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEtD,OAAO,EAAE,QAAQ,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAA;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAG9C,MAAM,OAAO,eAAe;IAG1B,YAAY,EAAE,MAAM,EAAsB;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"bff-auth-provider.js","sourceRoot":"","sources":["../../../../src/services/affinidi/auth/bff-auth-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { KeyLike } from 'jose';
|
|
2
|
+
import { LoginProviders } from '../../../common/constants.js';
|
|
2
3
|
import { LoggerAdapter } from '../logger/logger-adapter.js';
|
|
3
4
|
export interface AuthProvider {
|
|
4
|
-
authenticate(
|
|
5
|
+
authenticate(params: {
|
|
5
6
|
privateKey: KeyLike;
|
|
6
7
|
publicKey: KeyLike;
|
|
8
|
+
provider?: LoginProviders;
|
|
7
9
|
}): Promise<string>;
|
|
8
10
|
}
|
|
9
11
|
export type AuthProviderConfig = {
|
|
@@ -3,16 +3,17 @@ import { RawAxiosRequestHeaders } from 'axios';
|
|
|
3
3
|
import { KeyLike } from 'jose';
|
|
4
4
|
import { AuthProvider } from './auth/types.js';
|
|
5
5
|
import { StatsProjectResourceLimit, StatsResponseOutput } from './bff-service.types.js';
|
|
6
|
+
import { LoginProviders } from '../../common/constants.js';
|
|
6
7
|
export declare const instance: import("axios").AxiosInstance;
|
|
7
8
|
export declare function getBFFHeaders(): Promise<RawAxiosRequestHeaders>;
|
|
8
9
|
export declare class BFFService {
|
|
9
10
|
private readonly logger;
|
|
10
11
|
readonly authProvider: AuthProvider;
|
|
11
12
|
constructor();
|
|
12
|
-
login(): Promise<string>;
|
|
13
|
+
login(provider?: LoginProviders): Promise<string>;
|
|
13
14
|
logout(): Promise<void>;
|
|
14
15
|
whoami(): Promise<any>;
|
|
15
|
-
postAuthUrl(publicKey: string): Promise<URL>;
|
|
16
|
+
postAuthUrl(publicKey: string, provider?: LoginProviders): Promise<URL>;
|
|
16
17
|
getSessionId(state: string): Promise<string>;
|
|
17
18
|
getProjects(): Promise<ProjectDto[]>;
|
|
18
19
|
createProject(projectInput: CreateProjectInput): Promise<ProjectDto>;
|
|
@@ -30,9 +30,9 @@ export class BFFService {
|
|
|
30
30
|
logger: this.logger,
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
-
async login() {
|
|
33
|
+
async login(provider) {
|
|
34
34
|
const { privateKey, publicKey } = await this.generateKeyPair();
|
|
35
|
-
return this.authProvider.authenticate({ privateKey, publicKey });
|
|
35
|
+
return this.authProvider.authenticate({ privateKey, publicKey, provider });
|
|
36
36
|
}
|
|
37
37
|
async logout() {
|
|
38
38
|
const headers = await getBFFHeaders();
|
|
@@ -54,9 +54,9 @@ export class BFFService {
|
|
|
54
54
|
handleServiceError(error);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
async postAuthUrl(publicKey) {
|
|
57
|
+
async postAuthUrl(publicKey, provider) {
|
|
58
58
|
try {
|
|
59
|
-
const response = await instance.post('/api/auth/url', { publicKey, uxClient: config.bffUxClient }, { headers: await getBFFHeaders() });
|
|
59
|
+
const response = await instance.post('/api/auth/url', { publicKey, uxClient: config.bffUxClient, ...(provider ? { provider } : {}) }, { headers: await getBFFHeaders() });
|
|
60
60
|
return new URL(response.data.authUrl);
|
|
61
61
|
}
|
|
62
62
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bff-service.js","sourceRoot":"","sources":["../../../src/services/affinidi/bff-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,EAAE,EAAE,UAAU,EAA0B,MAAM,OAAO,CAAA;AACjE,OAAO,EAAW,eAAe,EAAE,MAAM,MAAM,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAG7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AAEzE,OAAO,
|
|
1
|
+
{"version":3,"file":"bff-service.js","sourceRoot":"","sources":["../../../src/services/affinidi/bff-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@affinidi/cli",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "Affinidi CLI",
|
|
5
5
|
"author": "affinidi.com",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@affinidi-tdk/login-configuration-client": "^1.40.0",
|
|
49
49
|
"@affinidi-tdk/wallets-client": "^1.37.0",
|
|
50
50
|
"@inquirer/prompts": "^8.3.0",
|
|
51
|
-
"@oclif/core": "^4.
|
|
51
|
+
"@oclif/core": "^4.3.1",
|
|
52
52
|
"@oclif/plugin-autocomplete": "^3.1.11",
|
|
53
53
|
"@oclif/plugin-commands": "^4.0.10",
|
|
54
54
|
"@oclif/plugin-help": "^6.2.7",
|
|
@@ -56,12 +56,12 @@
|
|
|
56
56
|
"@oclif/plugin-search": "^1.2.5",
|
|
57
57
|
"@oclif/plugin-warn-if-update-available": "^3.1.11",
|
|
58
58
|
"@napi-rs/keyring": "^1.3.0",
|
|
59
|
-
"axios": "^1.
|
|
59
|
+
"axios": "^1.20.0",
|
|
60
60
|
"chalk": "^5.3.0",
|
|
61
61
|
"conf": "^13.0.1",
|
|
62
|
-
"degit": "^2.8.
|
|
62
|
+
"degit": "^2.8.6",
|
|
63
63
|
"dotenv": "^16.4.5",
|
|
64
|
-
"express": "^4.
|
|
64
|
+
"express": "^4.22.3",
|
|
65
65
|
"helmet": "^7.1.0",
|
|
66
66
|
"http-status-codes": "^2.3.0",
|
|
67
67
|
"jose": "^5.6.3",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"@types/degit": "^2.8.4",
|
|
80
80
|
"@types/express": "^4.17.21",
|
|
81
81
|
"@types/mocha": "10.0.7",
|
|
82
|
-
"@types/node": "^
|
|
82
|
+
"@types/node": "^22.20.5",
|
|
83
83
|
"@types/tcp-port-used": "^1.0.4",
|
|
84
84
|
"@typescript-eslint/eslint-plugin": "^5.62.0",
|
|
85
85
|
"@typescript-eslint/parser": "^5.59.9",
|
|
@@ -153,7 +153,7 @@
|
|
|
153
153
|
}
|
|
154
154
|
},
|
|
155
155
|
"engines": {
|
|
156
|
-
"node": ">=
|
|
156
|
+
"node": "^22.23.4 || ^24.22.1 || >=26.12.1"
|
|
157
157
|
},
|
|
158
158
|
"types": "dist/index.d.ts"
|
|
159
159
|
}
|