diff --git a/.changeset/grumpy-turtles-vanish.md b/.changeset/grumpy-turtles-vanish.md new file mode 100644 index 0000000000..ec3733872f --- /dev/null +++ b/.changeset/grumpy-turtles-vanish.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder-backend': patch +--- + +Fix support for unauthenticated requests to create scaffolder tasks diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 7ea794796d..50f6fc372f 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -461,13 +461,15 @@ export async function createRouter( defaultKind: 'template', }); - const credentials = await httpAuth.credentials(req, { allow: ['user'] }); - + const credentials = await httpAuth.credentials(req); const { token } = await auth.getPluginRequestToken({ onBehalfOf: credentials, targetPluginId: 'catalog', }); - const userEntityRef = credentials.principal.userEntityRef; + + const userEntityRef = auth.isPrincipal(credentials, 'user') + ? credentials.principal.userEntityRef + : undefined; const userEntity = userEntityRef ? await catalogClient.getEntityByRef(userEntityRef, { token })