Skip to content

Commit 60c5fc4

Browse files
committed
feat: Added support for jwt based auth for NATS
Signed-off-by: RinkalBhojani <rinkal.bhojani@ayanworks.com>
1 parent 8d7bd00 commit 60c5fc4

63 files changed

Lines changed: 384 additions & 86 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env.demo

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,4 +246,10 @@ AGGREGATE_STREAM=aggregate
246246
DID_STREAM=did-notify
247247
PULL_CONSUMER=hub-pull-consumer
248248

249-
NATS_CREDS_FILE=
249+
NATS_CREDS_FILE=
250+
# 'nkey' | 'creds' | 'usernamePassword' | 'none'
251+
NATS_AUTH_TYPE=nkey
252+
# 'nkey' | 'creds' | 'usernamePassword' | 'none'
253+
NOTIFICATION_NATS_AUTH_TYPE=
254+
255+
ENABLE_NATS_NOTIFICATION=false

.env.sample

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,4 +274,10 @@ AGGREGATE_STREAM=aggregate
274274
DID_STREAM=did-notify
275275
PULL_CONSUMER=hub-pull-consumer
276276

277-
NATS_CREDS_FILE=/platform/app_user.creds
277+
NATS_CREDS_FILE=/platform/app_user.creds
278+
# 'nkey' | 'creds' | 'usernamePassword' | 'none'
279+
NATS_AUTH_TYPE=nkey
280+
# 'nkey' | 'creds' | 'usernamePassword' | 'none'
281+
NOTIFICATION_NATS_AUTH_TYPE=
282+
283+
ENABLE_NATS_NOTIFICATION=false

apps/agent-provisioning/src/agent-provisioning.module.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ import { ConfigModule as PlatformConfig } from '@credebl/config/config.module';
2020
{
2121
name: 'NATS_CLIENT',
2222
transport: Transport.NATS,
23-
options: getNatsOptions(CommonConstants.AGENT_PROVISIONING, process.env.NATS_CREDS_FILE)
23+
options: getNatsOptions(
24+
CommonConstants.AGENT_PROVISIONING,
25+
process.env.AGENT_PROVISIONING_NKEY_SEED,
26+
process.env.NATS_CREDS_FILE
27+
)
2428
}
2529
])
2630
],

apps/agent-provisioning/src/main.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,11 @@ const logger = new Logger();
1111
async function bootstrap(): Promise<void> {
1212
const app = await NestFactory.createMicroservice<MicroserviceOptions>(AgentProvisioningModule, {
1313
transport: Transport.NATS,
14-
options: getNatsOptions(CommonConstants.AGENT_PROVISIONING, process.env.NATS_CREDS_FILE)
14+
options: getNatsOptions(
15+
CommonConstants.AGENT_PROVISIONING,
16+
process.env.AGENT_PROVISIONING_NKEY_SEED,
17+
process.env.NATS_CREDS_FILE
18+
)
1519
});
1620
app.useLogger(app.get(NestjsLoggerServiceAdapter));
1721
app.useGlobalFilters(new HttpExceptionFilter());

apps/agent-service/src/agent-service.module.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,11 @@ import { APP_INTERCEPTOR } from '@nestjs/core';
3030
{
3131
name: 'NATS_CLIENT',
3232
transport: Transport.NATS,
33-
options: getNatsOptions(CommonConstants.AGENT_SERVICE, process.env.NATS_CREDS_FILE)
33+
options: getNatsOptions(
34+
CommonConstants.AGENT_SERVICE,
35+
process.env.AGENT_SERVICE_NKEY_SEED,
36+
process.env.NATS_CREDS_FILE
37+
)
3438
}
3539
]),
3640
CommonModule,

apps/agent-service/src/main.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,11 @@ const logger = new Logger();
1515
async function bootstrap(): Promise<void> {
1616
const app = await NestFactory.createMicroservice<MicroserviceOptions>(AgentServiceModule, {
1717
transport: Transport.NATS,
18-
options: getNatsOptions(CommonConstants.AGENT_SERVICE, process.env.NATS_CREDS_FILE)
18+
options: getNatsOptions(
19+
CommonConstants.AGENT_SERVICE,
20+
process.env.AGENT_SERVICE_NKEY_SEED,
21+
process.env.NATS_CREDS_FILE
22+
)
1923
});
2024
app.useLogger(app.get(NestjsLoggerServiceAdapter));
2125
app.useGlobalFilters(new HttpExceptionFilter());

apps/api-gateway/src/agent-service/agent-service.module.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@ import { NATSClient } from '@credebl/common/NATSClient';
1818
{
1919
name: 'NATS_CLIENT',
2020
transport: Transport.NATS,
21-
options: getNatsOptions(CommonConstants.AGENT_SERVICE, process.env.NATS_CREDS_FILE)
21+
options: getNatsOptions(
22+
CommonConstants.AGENT_SERVICE,
23+
process.env.API_GATEWAY_NKEY_SEED,
24+
process.env.NATS_CREDS_FILE
25+
)
2226
},
2327
CommonModule
2428
])

apps/api-gateway/src/app.module.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,11 @@ import { shouldLoadOidcModules } from '@credebl/common/common.utils';
4949
{
5050
name: 'NATS_CLIENT',
5151
transport: Transport.NATS,
52-
options: getNatsOptions(CommonConstants.API_GATEWAY_SERVICE, process.env.NATS_CREDS_FILE)
52+
options: getNatsOptions(
53+
CommonConstants.API_GATEWAY_SERVICE,
54+
process.env.API_GATEWAY_NKEY_SEED,
55+
process.env.NATS_CREDS_FILE
56+
)
5357
}
5458
]),
5559
AgentModule,

apps/api-gateway/src/authz/authz.module.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,11 @@ import { getNatsOptions } from '@credebl/common/nats.config';
3636
{
3737
name: 'NATS_CLIENT',
3838
transport: Transport.NATS,
39-
options: getNatsOptions(CommonConstants.AUTH_SERVICE, process.env.NATS_CREDS_FILE)
39+
options: getNatsOptions(
40+
CommonConstants.AUTH_SERVICE,
41+
process.env.API_GATEWAY_NKEY_SEED,
42+
process.env.NATS_CREDS_FILE
43+
)
4044
},
4145
CommonModule
4246
]),

apps/api-gateway/src/cloud-wallet/cloud-wallet.module.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@ import { NATSClient } from '@credebl/common/NATSClient';
1212
{
1313
name: 'NATS_CLIENT',
1414
transport: Transport.NATS,
15-
options: getNatsOptions(CommonConstants.CLOUD_WALLET_SERVICE, process.env.NATS_CREDS_FILE)
15+
options: getNatsOptions(
16+
CommonConstants.CLOUD_WALLET_SERVICE,
17+
process.env.API_GATEWAY_NKEY_SEED,
18+
process.env.NATS_CREDS_FILE
19+
)
1620
}
1721
])
1822
],

0 commit comments

Comments
 (0)