Add initial oidc interaction pages

This commit is contained in:
Johannes Zellner
2023-03-11 17:22:27 +01:00
parent 31e900cb9c
commit d6adbf46e6
4 changed files with 52 additions and 4 deletions
+9 -4
View File
@@ -270,7 +270,7 @@ function attachInteractionRoutes(routePrefix, app, provider) {
try {
const { uid, prompt, params, session } = await provider.interactionDetails(req, res);
debug(`interaction get uid:${uid} prompt.name:${prompt.name} client_id:${params.client_id} session:${session}`);
debug(`route interaction get uid:${uid} prompt.name:${prompt.name} client_id:${params.client_id} session:${session}`);
const client = await provider.Client.find(params.client_id);
@@ -278,6 +278,7 @@ function attachInteractionRoutes(routePrefix, app, provider) {
case 'login': {
return res.render('login', {
client,
submitUrl: `${routePrefix}/interaction/${uid}/login`,
uid,
details: prompt.details,
params,
@@ -292,6 +293,7 @@ function attachInteractionRoutes(routePrefix, app, provider) {
case 'consent': {
return res.render('interaction', {
client,
submitUrl: `${routePrefix}/interaction/${uid}/confirm`,
uid,
details: prompt.details,
params,
@@ -315,7 +317,7 @@ function attachInteractionRoutes(routePrefix, app, provider) {
try {
const { uid, prompt: { name } } = await provider.interactionDetails(req, res);
debug(`interaction login post uid:${uid} prompt.name:${name} login:${req.body.login}`);
debug(`route interaction login post uid:${uid} prompt.name:${name} login:${req.body.login}`);
assert.equal(name, 'login');
const account = await Account.findByLogin(req.body.login);
@@ -337,7 +339,7 @@ function attachInteractionRoutes(routePrefix, app, provider) {
const interactionDetails = await provider.interactionDetails(req, res);
const { uid, prompt: { name, details }, params, session: { accountId } } = interactionDetails;
debug(`interaction confirm post uid:${uid} prompt.name:${name} accountId:${accountId}`);
debug(`route interaction confirm post uid:${uid} prompt.name:${name} accountId:${accountId}`);
assert.equal(name, 'consent');
@@ -384,7 +386,7 @@ function attachInteractionRoutes(routePrefix, app, provider) {
});
app.get(routePrefix + '/interaction/:uid/abort', setNoCache, async (req, res, next) => {
debug(`interaction abort`);
debug(`route interaction abort`);
try {
const result = {
@@ -419,6 +421,9 @@ async function getProvider(routePrefix) {
return `${routePrefix}/interaction/${interaction.uid}`;
}
},
features: {
devInteractions: { enabled: false }
},
clients: [{
client_id: 'foo',
client_secret: 'bar',