mitre / tir

LM + MITRE SAF project
Other
6 stars 0 forks source link

Implement Auth in TIR #3

Open Amndeep7 opened 4 months ago

Amndeep7 commented 4 months ago

Copy over from Heimdall for the most part. Key one we need is LDAPS. Will probably require changes to the user model / other db stuff so that we have all the fields we need. ATM, all we need is to create a user of the lowest set of permissions and the admin can go in and upgrade them to whatever they need. Ideally we are able to take in what groups a user is in (from LDAP, not just oidc which is what we support atm on heimdall) so that we can automatically provision the user with the correct amount of permissions.

Amndeep7 commented 2 months ago

Passport is not currently viable in a nuxt3 application. Some research here: https://github.com/mitre/tir/pull/8

Currently we are supporting just local auth and ldap via ldapjs. Ldapjs is now decommissioned so we will need to find a replacement.

Doing a brief examination of the space, it seems like Auth.js (either raw or with that Nuxt wrapper on top) will be the move. We will need to examine how their LDAP integration works to see if it was dependent on ldapjs like the Passport ldap strategy is.

https://auth.nuxtjs.org/