From fe3ac2f6bbfcc3da8781ce9562efd44cabde7a78 Mon Sep 17 00:00:00 2001 From: blam Date: Mon, 30 May 2022 11:50:34 +0200 Subject: [PATCH] chore: reworking the initial work to link out to the sign in reolver Signed-off-by: blam --- docs/getting-started/configuration.md | 50 +-------------------------- 1 file changed, 1 insertion(+), 49 deletions(-) diff --git a/docs/getting-started/configuration.md b/docs/getting-started/configuration.md index cf845c8d4c..0660497276 100644 --- a/docs/getting-started/configuration.md +++ b/docs/getting-started/configuration.md @@ -187,55 +187,7 @@ components: { }, ``` -Since [v1.1.0](https://github.com/backstage/backstage/releases/tag/v1.1.0-next.3), you must provide an explicit sign-in resolver. - -Open `packages/backend/src/plugins/auth.ts` and replace with following code snippet: - -```typescript -import { - createRouter, - providers, - defaultAuthProviderFactories, -} from '@backstage/plugin-auth-backend'; -import { Router } from 'express'; -import { PluginEnvironment } from '../types'; -import { stringifyEntityRef } from '@backstage/catalog-model'; - -export default async function createPlugin( - env: PluginEnvironment, -): Promise { - return await createRouter({ - ...env, - providerFactories: { - ...defaultAuthProviderFactories, - github: providers.github.create({ - signIn: { - resolver: async ({ profile }, ctx) => { - if (!profile.email) { - throw new Error( - 'Login failed, user profile does not contain an email', - ); - } - const [localPart] = profile.email.split('@'); - - const userEntityRef = stringifyEntityRef({ - kind: 'User', - name: localPart, - namespace: 'DEFAULT_NAMESPACE', - }); - return ctx.issueToken({ - claims: { - sub: userEntityRef, - ent: [userEntityRef], - }, - }); - }, - }, - }), - }, - }); -} -``` +> Since [v1.1.0](https://github.com/backstage/backstage/releases/tag/v1.1.0-next.3), you must provide an [explicit sign-in resolver](https://backstage.io/docs/auth/identity-resolver). That should be it. You can stop your Backstage App. When you start it again and go to your Backstage portal in your browser, you should have your login prompt!