AbsaOSS / AbsaOSS/enceladus

Extend the number of users we are able to create in memory

Open
#1,671 0 comments 0 reactions 0 assignees View on GitHub
feature priority: undecided under discussion
Dominant language
Scala
Stars
33
Forks
16
PR merge metrics
No merged PRs in 30d

Description

## Background
For the purpose of Load testing and maybe even other types of testing it would be good to be able to pull in-memory-users from some file (app.conf or other) where we can specify name, password and role.

Currently, we only create one in-memory-user for the purpose of the testing user/change me. It is pulled from app.conf and he has no standard ROLE_USER.

## Feature
Load in-memory-user more dynamically and be able to have more of them.

## Example [Optional]
```properties
menas.auth.inmemory.1.user=user
menas.auth.inmemory.1.password=changeme
menas.auth.inmemory.1.role=ROLE_USER
menas.auth.inmemory.2.user=user
menas.auth.inmemory.2.password=changeme
menas.auth.inmemory.2.role=ROLE_USER
menas.auth.inmemory.3.user=user
menas.auth.inmemory.3.password=changeme
menas.auth.inmemory.3.role=ROLE_USER
```
OR
Separate HOCON-like file
```HOCON
standard-user = { password = "aligator1", role = "ROLE_USER"
users = [
${standard-user} { name = "user1" },
${standard-user} { name = "user2" },
${standard-user} { name = "user3" },
{ name = "menas-admin", password = "aligator2", role = "ROLE_ADMIN" }
]
```

Contributor guide

Open the contributing guide

Research direction

Start with the current app.conf settings and the code that creates the existing testing user. Compare the proposed property-based and HOCON-like configuration shapes, then define how multiple names, passwords, and roles should be loaded. Done means load testing can create more than one in-memory user with the configured credentials and roles, with coverage for the chosen configuration format.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
authentication
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.