@backstage/plugin-auth-backend 0.24.5-next.2 → 0.25.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/config.d.ts +3 -59
  3. package/dist/authPlugin.cjs.js +4 -8
  4. package/dist/authPlugin.cjs.js.map +1 -1
  5. package/dist/database/AuthDatabase.cjs.js +0 -16
  6. package/dist/database/AuthDatabase.cjs.js.map +1 -1
  7. package/dist/index.cjs.js +0 -26
  8. package/dist/index.cjs.js.map +1 -1
  9. package/dist/index.d.ts +1 -850
  10. package/dist/lib/catalog/CatalogIdentityClient.cjs.js +11 -20
  11. package/dist/lib/catalog/CatalogIdentityClient.cjs.js.map +1 -1
  12. package/dist/lib/resolvers/CatalogAuthResolverContext.cjs.js +14 -17
  13. package/dist/lib/resolvers/CatalogAuthResolverContext.cjs.js.map +1 -1
  14. package/dist/providers/router.cjs.js +2 -9
  15. package/dist/providers/router.cjs.js.map +1 -1
  16. package/dist/service/router.cjs.js +5 -16
  17. package/dist/service/router.cjs.js.map +1 -1
  18. package/package.json +11 -54
  19. package/dist/lib/flow/authFlowHelpers.cjs.js +0 -43
  20. package/dist/lib/flow/authFlowHelpers.cjs.js.map +0 -1
  21. package/dist/lib/legacy/adaptLegacyOAuthHandler.cjs.js +0 -20
  22. package/dist/lib/legacy/adaptLegacyOAuthHandler.cjs.js.map +0 -1
  23. package/dist/lib/legacy/adaptLegacyOAuthSignInResolver.cjs.js +0 -24
  24. package/dist/lib/legacy/adaptLegacyOAuthSignInResolver.cjs.js.map +0 -1
  25. package/dist/lib/legacy/adaptOAuthSignInResolverToLegacy.cjs.js +0 -29
  26. package/dist/lib/legacy/adaptOAuthSignInResolverToLegacy.cjs.js.map +0 -1
  27. package/dist/lib/oauth/OAuthAdapter.cjs.js +0 -220
  28. package/dist/lib/oauth/OAuthAdapter.cjs.js.map +0 -1
  29. package/dist/lib/oauth/OAuthEnvironmentHandler.cjs.js +0 -8
  30. package/dist/lib/oauth/OAuthEnvironmentHandler.cjs.js.map +0 -1
  31. package/dist/lib/oauth/helpers.cjs.js +0 -40
  32. package/dist/lib/oauth/helpers.cjs.js.map +0 -1
  33. package/dist/lib/passport/PassportStrategyHelper.cjs.js +0 -49
  34. package/dist/lib/passport/PassportStrategyHelper.cjs.js.map +0 -1
  35. package/dist/providers/atlassian/provider.cjs.js +0 -20
  36. package/dist/providers/atlassian/provider.cjs.js.map +0 -1
  37. package/dist/providers/auth0/provider.cjs.js +0 -20
  38. package/dist/providers/auth0/provider.cjs.js.map +0 -1
  39. package/dist/providers/aws-alb/provider.cjs.js +0 -18
  40. package/dist/providers/aws-alb/provider.cjs.js.map +0 -1
  41. package/dist/providers/azure-easyauth/provider.cjs.js +0 -18
  42. package/dist/providers/azure-easyauth/provider.cjs.js.map +0 -1
  43. package/dist/providers/bitbucket/provider.cjs.js +0 -25
  44. package/dist/providers/bitbucket/provider.cjs.js.map +0 -1
  45. package/dist/providers/bitbucketServer/provider.cjs.js +0 -46
  46. package/dist/providers/bitbucketServer/provider.cjs.js.map +0 -1
  47. package/dist/providers/cloudflare-access/provider.cjs.js +0 -22
  48. package/dist/providers/cloudflare-access/provider.cjs.js.map +0 -1
  49. package/dist/providers/createAuthProviderIntegration.cjs.js +0 -11
  50. package/dist/providers/createAuthProviderIntegration.cjs.js.map +0 -1
  51. package/dist/providers/gcp-iap/provider.cjs.js +0 -18
  52. package/dist/providers/gcp-iap/provider.cjs.js.map +0 -1
  53. package/dist/providers/github/provider.cjs.js +0 -61
  54. package/dist/providers/github/provider.cjs.js.map +0 -1
  55. package/dist/providers/gitlab/provider.cjs.js +0 -20
  56. package/dist/providers/gitlab/provider.cjs.js.map +0 -1
  57. package/dist/providers/google/provider.cjs.js +0 -26
  58. package/dist/providers/google/provider.cjs.js.map +0 -1
  59. package/dist/providers/microsoft/provider.cjs.js +0 -27
  60. package/dist/providers/microsoft/provider.cjs.js.map +0 -1
  61. package/dist/providers/oauth2/provider.cjs.js +0 -20
  62. package/dist/providers/oauth2/provider.cjs.js.map +0 -1
  63. package/dist/providers/oauth2-proxy/provider.cjs.js +0 -18
  64. package/dist/providers/oauth2-proxy/provider.cjs.js.map +0 -1
  65. package/dist/providers/oidc/provider.cjs.js +0 -37
  66. package/dist/providers/oidc/provider.cjs.js.map +0 -1
  67. package/dist/providers/okta/provider.cjs.js +0 -47
  68. package/dist/providers/okta/provider.cjs.js.map +0 -1
  69. package/dist/providers/onelogin/provider.cjs.js +0 -20
  70. package/dist/providers/onelogin/provider.cjs.js.map +0 -1
  71. package/dist/providers/prepareBackstageIdentityResponse.cjs.js +0 -8
  72. package/dist/providers/prepareBackstageIdentityResponse.cjs.js.map +0 -1
  73. package/dist/providers/providers.cjs.js +0 -62
  74. package/dist/providers/providers.cjs.js.map +0 -1
  75. package/dist/providers/resolvers.cjs.js +0 -27
  76. package/dist/providers/resolvers.cjs.js.map +0 -1
  77. package/dist/providers/saml/provider.cjs.js +0 -121
  78. package/dist/providers/saml/provider.cjs.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,56 @@
1
1
  # @backstage/plugin-auth-backend
2
2
 
3
+ ## 0.25.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 57221d9: **BREAKING**: Removed support for the old backend system, and removed all deprecated exports.
8
+
9
+ If you were using one of the deprecated imports from this package, you will have to follow the instructions in their respective deprecation notices before upgrading. Most of the general utilities are available from `@backstage/plugin-auth-node`, and the specific auth providers are available from dedicated packages such as for example `@backstage/plugin-auth-backend-module-github-provider`. See [the auth docs](https://backstage.io/docs/auth/) for specific instructions.
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies
14
+ - @backstage/plugin-catalog-node@1.17.0-next.0
15
+ - @backstage/backend-plugin-api@1.3.1-next.0
16
+ - @backstage/plugin-auth-node@0.6.3-next.0
17
+ - @backstage/catalog-model@1.7.3
18
+ - @backstage/config@1.3.2
19
+ - @backstage/errors@1.2.7
20
+ - @backstage/types@1.2.1
21
+
22
+ ## 0.24.5
23
+
24
+ ### Patch Changes
25
+
26
+ - 25d05f9: Slight update to the config schema
27
+ - Updated dependencies
28
+ - @backstage/plugin-auth-backend-module-bitbucket-provider@0.3.2
29
+ - @backstage/plugin-catalog-node@1.16.3
30
+ - @backstage/plugin-auth-backend-module-oidc-provider@0.4.2
31
+ - @backstage/backend-plugin-api@1.3.0
32
+ - @backstage/plugin-auth-backend-module-atlassian-provider@0.4.2
33
+ - @backstage/plugin-auth-backend-module-auth0-provider@0.2.2
34
+ - @backstage/plugin-auth-backend-module-bitbucket-server-provider@0.2.2
35
+ - @backstage/plugin-auth-backend-module-cloudflare-access-provider@0.4.2
36
+ - @backstage/plugin-auth-backend-module-github-provider@0.3.2
37
+ - @backstage/plugin-auth-backend-module-gitlab-provider@0.3.2
38
+ - @backstage/plugin-auth-backend-module-microsoft-provider@0.3.2
39
+ - @backstage/plugin-auth-backend-module-oauth2-provider@0.4.2
40
+ - @backstage/plugin-auth-backend-module-okta-provider@0.2.2
41
+ - @backstage/plugin-auth-backend-module-onelogin-provider@0.3.2
42
+ - @backstage/plugin-auth-node@0.6.2
43
+ - @backstage/catalog-client@1.9.1
44
+ - @backstage/catalog-model@1.7.3
45
+ - @backstage/config@1.3.2
46
+ - @backstage/errors@1.2.7
47
+ - @backstage/types@1.2.1
48
+ - @backstage/plugin-auth-backend-module-aws-alb-provider@0.4.2
49
+ - @backstage/plugin-auth-backend-module-azure-easyauth-provider@0.2.7
50
+ - @backstage/plugin-auth-backend-module-gcp-iap-provider@0.4.2
51
+ - @backstage/plugin-auth-backend-module-google-provider@0.3.2
52
+ - @backstage/plugin-auth-backend-module-oauth2-proxy-provider@0.2.7
53
+
3
54
  ## 0.24.5-next.2
4
55
 
5
56
  ### Patch Changes
package/config.d.ts CHANGED
@@ -85,66 +85,10 @@ export interface Config {
85
85
  };
86
86
 
87
87
  /**
88
- * The available auth-provider options and attributes
89
- * @additionalProperties true
88
+ * The backstage token expiration.
90
89
  */
91
- providers?: {
92
- /** @visibility frontend */
93
- saml?: {
94
- entryPoint: string;
95
- logoutUrl?: string;
96
- issuer: string;
97
- /**
98
- * @visibility secret
99
- */
100
- cert: string;
101
- audience?: string;
102
- /**
103
- * @visibility secret
104
- */
105
- privateKey?: string;
106
- authnContext?: string[];
107
- identifierFormat?: string;
108
- /**
109
- * @visibility secret
110
- */
111
- decryptionPvk?: string;
112
- signatureAlgorithm?: 'sha256' | 'sha512';
113
- digestAlgorithm?: string;
114
- acceptedClockSkewMs?: number;
115
- };
116
- /** @visibility frontend */
117
- auth0?: {
118
- [authEnv: string]: {
119
- clientId: string;
120
- /**
121
- * @visibility secret
122
- */
123
- clientSecret: string;
124
- domain: string;
125
- callbackUrl?: string;
126
- audience?: string;
127
- connection?: string;
128
- connectionScope?: string;
129
- };
130
- };
131
- /** @visibility frontend */
132
- onelogin?: {
133
- [authEnv: string]: {
134
- clientId: string;
135
- /**
136
- * @visibility secret
137
- */
138
- clientSecret: string;
139
- issuer: string;
140
- callbackUrl?: string;
141
- };
142
- };
143
- /**
144
- * The backstage token expiration.
145
- */
146
- backstageTokenExpiration?: HumanDuration | string;
147
- };
90
+ backstageTokenExpiration?: HumanDuration | string;
91
+
148
92
  /**
149
93
  * Additional app origins to allow for authenticating
150
94
  */
@@ -2,7 +2,7 @@
2
2
 
3
3
  var backendPluginApi = require('@backstage/backend-plugin-api');
4
4
  var pluginAuthNode = require('@backstage/plugin-auth-node');
5
- var alpha = require('@backstage/plugin-catalog-node/alpha');
5
+ var pluginCatalogNode = require('@backstage/plugin-catalog-node');
6
6
  var router = require('./service/router.cjs.js');
7
7
 
8
8
  const authPlugin = backendPluginApi.createBackendPlugin({
@@ -36,8 +36,7 @@ const authPlugin = backendPluginApi.createBackendPlugin({
36
36
  database: backendPluginApi.coreServices.database,
37
37
  discovery: backendPluginApi.coreServices.discovery,
38
38
  auth: backendPluginApi.coreServices.auth,
39
- httpAuth: backendPluginApi.coreServices.httpAuth,
40
- catalogApi: alpha.catalogServiceRef
39
+ catalog: pluginCatalogNode.catalogServiceRef
41
40
  },
42
41
  async init({
43
42
  httpRouter,
@@ -46,8 +45,7 @@ const authPlugin = backendPluginApi.createBackendPlugin({
46
45
  database,
47
46
  discovery,
48
47
  auth,
49
- httpAuth,
50
- catalogApi
48
+ catalog
51
49
  }) {
52
50
  const router$1 = await router.createRouter({
53
51
  logger,
@@ -55,10 +53,8 @@ const authPlugin = backendPluginApi.createBackendPlugin({
55
53
  database,
56
54
  discovery,
57
55
  auth,
58
- httpAuth,
59
- catalogApi,
56
+ catalog,
60
57
  providerFactories: Object.fromEntries(providers),
61
- disableDefaultProviderFactories: true,
62
58
  ownershipResolver
63
59
  });
64
60
  httpRouter.addAuthPolicy({
@@ -1 +1 @@
1
- {"version":3,"file":"authPlugin.cjs.js","sources":["../src/authPlugin.ts"],"sourcesContent":["/*\n * Copyright 2023 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n coreServices,\n createBackendPlugin,\n} from '@backstage/backend-plugin-api';\nimport {\n authOwnershipResolutionExtensionPoint,\n AuthOwnershipResolver,\n AuthProviderFactory,\n authProvidersExtensionPoint,\n} from '@backstage/plugin-auth-node';\nimport { catalogServiceRef } from '@backstage/plugin-catalog-node/alpha';\nimport { createRouter } from './service/router';\n\n/**\n * Auth plugin\n *\n * @public\n */\nexport const authPlugin = createBackendPlugin({\n pluginId: 'auth',\n register(reg) {\n const providers = new Map<string, AuthProviderFactory>();\n let ownershipResolver: AuthOwnershipResolver | undefined = undefined;\n\n reg.registerExtensionPoint(authProvidersExtensionPoint, {\n registerProvider({ providerId, factory }) {\n if (providers.has(providerId)) {\n throw new Error(\n `Auth provider '${providerId}' was already registered`,\n );\n }\n providers.set(providerId, factory);\n },\n });\n\n reg.registerExtensionPoint(authOwnershipResolutionExtensionPoint, {\n setAuthOwnershipResolver(resolver) {\n if (ownershipResolver) {\n throw new Error('Auth ownership resolver is already set');\n }\n ownershipResolver = resolver;\n },\n });\n\n reg.registerInit({\n deps: {\n httpRouter: coreServices.httpRouter,\n logger: coreServices.logger,\n config: coreServices.rootConfig,\n database: coreServices.database,\n discovery: coreServices.discovery,\n auth: coreServices.auth,\n httpAuth: coreServices.httpAuth,\n catalogApi: catalogServiceRef,\n },\n async init({\n httpRouter,\n logger,\n config,\n database,\n discovery,\n auth,\n httpAuth,\n catalogApi,\n }) {\n const router = await createRouter({\n logger,\n config,\n database,\n discovery,\n auth,\n httpAuth,\n catalogApi,\n providerFactories: Object.fromEntries(providers),\n disableDefaultProviderFactories: true,\n ownershipResolver,\n });\n httpRouter.addAuthPolicy({\n path: '/',\n allow: 'unauthenticated',\n });\n httpRouter.use(router);\n },\n });\n },\n});\n"],"names":["createBackendPlugin","authProvidersExtensionPoint","authOwnershipResolutionExtensionPoint","coreServices","catalogServiceRef","router","createRouter"],"mappings":";;;;;;;AAkCO,MAAM,aAAaA,oCAAoB,CAAA;AAAA,EAC5C,QAAU,EAAA,MAAA;AAAA,EACV,SAAS,GAAK,EAAA;AACZ,IAAM,MAAA,SAAA,uBAAgB,GAAiC,EAAA;AACvD,IAAA,IAAI,iBAAuD,GAAA,KAAA,CAAA;AAE3D,IAAA,GAAA,CAAI,uBAAuBC,0CAA6B,EAAA;AAAA,MACtD,gBAAiB,CAAA,EAAE,UAAY,EAAA,OAAA,EAAW,EAAA;AACxC,QAAI,IAAA,SAAA,CAAU,GAAI,CAAA,UAAU,CAAG,EAAA;AAC7B,UAAA,MAAM,IAAI,KAAA;AAAA,YACR,kBAAkB,UAAU,CAAA,wBAAA;AAAA,WAC9B;AAAA;AAEF,QAAU,SAAA,CAAA,GAAA,CAAI,YAAY,OAAO,CAAA;AAAA;AACnC,KACD,CAAA;AAED,IAAA,GAAA,CAAI,uBAAuBC,oDAAuC,EAAA;AAAA,MAChE,yBAAyB,QAAU,EAAA;AACjC,QAAA,IAAI,iBAAmB,EAAA;AACrB,UAAM,MAAA,IAAI,MAAM,wCAAwC,CAAA;AAAA;AAE1D,QAAoB,iBAAA,GAAA,QAAA;AAAA;AACtB,KACD,CAAA;AAED,IAAA,GAAA,CAAI,YAAa,CAAA;AAAA,MACf,IAAM,EAAA;AAAA,QACJ,YAAYC,6BAAa,CAAA,UAAA;AAAA,QACzB,QAAQA,6BAAa,CAAA,MAAA;AAAA,QACrB,QAAQA,6BAAa,CAAA,UAAA;AAAA,QACrB,UAAUA,6BAAa,CAAA,QAAA;AAAA,QACvB,WAAWA,6BAAa,CAAA,SAAA;AAAA,QACxB,MAAMA,6BAAa,CAAA,IAAA;AAAA,QACnB,UAAUA,6BAAa,CAAA,QAAA;AAAA,QACvB,UAAY,EAAAC;AAAA,OACd;AAAA,MACA,MAAM,IAAK,CAAA;AAAA,QACT,UAAA;AAAA,QACA,MAAA;AAAA,QACA,MAAA;AAAA,QACA,QAAA;AAAA,QACA,SAAA;AAAA,QACA,IAAA;AAAA,QACA,QAAA;AAAA,QACA;AAAA,OACC,EAAA;AACD,QAAM,MAAAC,QAAA,GAAS,MAAMC,mBAAa,CAAA;AAAA,UAChC,MAAA;AAAA,UACA,MAAA;AAAA,UACA,QAAA;AAAA,UACA,SAAA;AAAA,UACA,IAAA;AAAA,UACA,QAAA;AAAA,UACA,UAAA;AAAA,UACA,iBAAA,EAAmB,MAAO,CAAA,WAAA,CAAY,SAAS,CAAA;AAAA,UAC/C,+BAAiC,EAAA,IAAA;AAAA,UACjC;AAAA,SACD,CAAA;AACD,QAAA,UAAA,CAAW,aAAc,CAAA;AAAA,UACvB,IAAM,EAAA,GAAA;AAAA,UACN,KAAO,EAAA;AAAA,SACR,CAAA;AACD,QAAA,UAAA,CAAW,IAAID,QAAM,CAAA;AAAA;AACvB,KACD,CAAA;AAAA;AAEL,CAAC;;;;"}
1
+ {"version":3,"file":"authPlugin.cjs.js","sources":["../src/authPlugin.ts"],"sourcesContent":["/*\n * Copyright 2023 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n coreServices,\n createBackendPlugin,\n} from '@backstage/backend-plugin-api';\nimport {\n authOwnershipResolutionExtensionPoint,\n AuthOwnershipResolver,\n AuthProviderFactory,\n authProvidersExtensionPoint,\n} from '@backstage/plugin-auth-node';\nimport { catalogServiceRef } from '@backstage/plugin-catalog-node';\nimport { createRouter } from './service/router';\n\n/**\n * Auth plugin\n *\n * @public\n */\nexport const authPlugin = createBackendPlugin({\n pluginId: 'auth',\n register(reg) {\n const providers = new Map<string, AuthProviderFactory>();\n let ownershipResolver: AuthOwnershipResolver | undefined = undefined;\n\n reg.registerExtensionPoint(authProvidersExtensionPoint, {\n registerProvider({ providerId, factory }) {\n if (providers.has(providerId)) {\n throw new Error(\n `Auth provider '${providerId}' was already registered`,\n );\n }\n providers.set(providerId, factory);\n },\n });\n\n reg.registerExtensionPoint(authOwnershipResolutionExtensionPoint, {\n setAuthOwnershipResolver(resolver) {\n if (ownershipResolver) {\n throw new Error('Auth ownership resolver is already set');\n }\n ownershipResolver = resolver;\n },\n });\n\n reg.registerInit({\n deps: {\n httpRouter: coreServices.httpRouter,\n logger: coreServices.logger,\n config: coreServices.rootConfig,\n database: coreServices.database,\n discovery: coreServices.discovery,\n auth: coreServices.auth,\n catalog: catalogServiceRef,\n },\n async init({\n httpRouter,\n logger,\n config,\n database,\n discovery,\n auth,\n catalog,\n }) {\n const router = await createRouter({\n logger,\n config,\n database,\n discovery,\n auth,\n catalog,\n providerFactories: Object.fromEntries(providers),\n ownershipResolver,\n });\n httpRouter.addAuthPolicy({\n path: '/',\n allow: 'unauthenticated',\n });\n httpRouter.use(router);\n },\n });\n },\n});\n"],"names":["createBackendPlugin","authProvidersExtensionPoint","authOwnershipResolutionExtensionPoint","coreServices","catalogServiceRef","router","createRouter"],"mappings":";;;;;;;AAkCO,MAAM,aAAaA,oCAAoB,CAAA;AAAA,EAC5C,QAAU,EAAA,MAAA;AAAA,EACV,SAAS,GAAK,EAAA;AACZ,IAAM,MAAA,SAAA,uBAAgB,GAAiC,EAAA;AACvD,IAAA,IAAI,iBAAuD,GAAA,KAAA,CAAA;AAE3D,IAAA,GAAA,CAAI,uBAAuBC,0CAA6B,EAAA;AAAA,MACtD,gBAAiB,CAAA,EAAE,UAAY,EAAA,OAAA,EAAW,EAAA;AACxC,QAAI,IAAA,SAAA,CAAU,GAAI,CAAA,UAAU,CAAG,EAAA;AAC7B,UAAA,MAAM,IAAI,KAAA;AAAA,YACR,kBAAkB,UAAU,CAAA,wBAAA;AAAA,WAC9B;AAAA;AAEF,QAAU,SAAA,CAAA,GAAA,CAAI,YAAY,OAAO,CAAA;AAAA;AACnC,KACD,CAAA;AAED,IAAA,GAAA,CAAI,uBAAuBC,oDAAuC,EAAA;AAAA,MAChE,yBAAyB,QAAU,EAAA;AACjC,QAAA,IAAI,iBAAmB,EAAA;AACrB,UAAM,MAAA,IAAI,MAAM,wCAAwC,CAAA;AAAA;AAE1D,QAAoB,iBAAA,GAAA,QAAA;AAAA;AACtB,KACD,CAAA;AAED,IAAA,GAAA,CAAI,YAAa,CAAA;AAAA,MACf,IAAM,EAAA;AAAA,QACJ,YAAYC,6BAAa,CAAA,UAAA;AAAA,QACzB,QAAQA,6BAAa,CAAA,MAAA;AAAA,QACrB,QAAQA,6BAAa,CAAA,UAAA;AAAA,QACrB,UAAUA,6BAAa,CAAA,QAAA;AAAA,QACvB,WAAWA,6BAAa,CAAA,SAAA;AAAA,QACxB,MAAMA,6BAAa,CAAA,IAAA;AAAA,QACnB,OAAS,EAAAC;AAAA,OACX;AAAA,MACA,MAAM,IAAK,CAAA;AAAA,QACT,UAAA;AAAA,QACA,MAAA;AAAA,QACA,MAAA;AAAA,QACA,QAAA;AAAA,QACA,SAAA;AAAA,QACA,IAAA;AAAA,QACA;AAAA,OACC,EAAA;AACD,QAAM,MAAAC,QAAA,GAAS,MAAMC,mBAAa,CAAA;AAAA,UAChC,MAAA;AAAA,UACA,MAAA;AAAA,UACA,QAAA;AAAA,UACA,SAAA;AAAA,UACA,IAAA;AAAA,UACA,OAAA;AAAA,UACA,iBAAA,EAAmB,MAAO,CAAA,WAAA,CAAY,SAAS,CAAA;AAAA,UAC/C;AAAA,SACD,CAAA;AACD,QAAA,UAAA,CAAW,aAAc,CAAA;AAAA,UACvB,IAAM,EAAA,GAAA;AAAA,UACN,KAAO,EAAA;AAAA,SACR,CAAA;AACD,QAAA,UAAA,CAAW,IAAID,QAAM,CAAA;AAAA;AACvB,KACD,CAAA;AAAA;AAEL,CAAC;;;;"}
@@ -1,8 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var backendCommon = require('@backstage/backend-common');
4
3
  var backendPluginApi = require('@backstage/backend-plugin-api');
5
- var config = require('@backstage/config');
6
4
 
7
5
  const migrationsDir = backendPluginApi.resolvePackagePath(
8
6
  "@backstage/plugin-auth-backend",
@@ -14,20 +12,6 @@ class AuthDatabase {
14
12
  static create(database) {
15
13
  return new AuthDatabase(database);
16
14
  }
17
- /** @internal */
18
- static forTesting() {
19
- const config$1 = new config.ConfigReader({
20
- backend: {
21
- database: {
22
- client: "better-sqlite3",
23
- connection: ":memory:",
24
- useNullAsDefault: true
25
- }
26
- }
27
- });
28
- const database = backendCommon.DatabaseManager.fromConfig(config$1).forPlugin("auth");
29
- return new AuthDatabase(database);
30
- }
31
15
  static async runMigrations(knex) {
32
16
  await knex.migrate.latest({
33
17
  directory: migrationsDir
@@ -1 +1 @@
1
- {"version":3,"file":"AuthDatabase.cjs.js","sources":["../../src/database/AuthDatabase.ts"],"sourcesContent":["/*\n * Copyright 2023 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { DatabaseManager } from '@backstage/backend-common';\nimport {\n DatabaseService,\n resolvePackagePath,\n} from '@backstage/backend-plugin-api';\nimport { ConfigReader } from '@backstage/config';\nimport { Knex } from 'knex';\n\nconst migrationsDir = resolvePackagePath(\n '@backstage/plugin-auth-backend',\n 'migrations',\n);\n\n/**\n * Ensures that a database connection is established exactly once and only when\n * asked for, and runs migrations.\n */\nexport class AuthDatabase {\n readonly #database: DatabaseService;\n #promise: Promise<Knex> | undefined;\n\n static create(database: DatabaseService): AuthDatabase {\n return new AuthDatabase(database);\n }\n\n /** @internal */\n static forTesting(): AuthDatabase {\n const config = new ConfigReader({\n backend: {\n database: {\n client: 'better-sqlite3',\n connection: ':memory:',\n useNullAsDefault: true,\n },\n },\n });\n const database = DatabaseManager.fromConfig(config).forPlugin('auth');\n return new AuthDatabase(database);\n }\n\n static async runMigrations(knex: Knex): Promise<void> {\n await knex.migrate.latest({\n directory: migrationsDir,\n });\n }\n\n private constructor(database: DatabaseService) {\n this.#database = database;\n }\n\n get(): Promise<Knex> {\n this.#promise ??= this.#database.getClient().then(async client => {\n if (!this.#database.migrations?.skip) {\n await AuthDatabase.runMigrations(client);\n }\n return client;\n });\n\n return this.#promise;\n }\n}\n"],"names":["resolvePackagePath","config","ConfigReader","DatabaseManager"],"mappings":";;;;;;AAwBA,MAAM,aAAgB,GAAAA,mCAAA;AAAA,EACpB,gCAAA;AAAA,EACA;AACF,CAAA;AAMO,MAAM,YAAa,CAAA;AAAA,EACf,SAAA;AAAA,EACT,QAAA;AAAA,EAEA,OAAO,OAAO,QAAyC,EAAA;AACrD,IAAO,OAAA,IAAI,aAAa,QAAQ,CAAA;AAAA;AAClC;AAAA,EAGA,OAAO,UAA2B,GAAA;AAChC,IAAM,MAAAC,QAAA,GAAS,IAAIC,mBAAa,CAAA;AAAA,MAC9B,OAAS,EAAA;AAAA,QACP,QAAU,EAAA;AAAA,UACR,MAAQ,EAAA,gBAAA;AAAA,UACR,UAAY,EAAA,UAAA;AAAA,UACZ,gBAAkB,EAAA;AAAA;AACpB;AACF,KACD,CAAA;AACD,IAAA,MAAM,WAAWC,6BAAgB,CAAA,UAAA,CAAWF,QAAM,CAAA,CAAE,UAAU,MAAM,CAAA;AACpE,IAAO,OAAA,IAAI,aAAa,QAAQ,CAAA;AAAA;AAClC,EAEA,aAAa,cAAc,IAA2B,EAAA;AACpD,IAAM,MAAA,IAAA,CAAK,QAAQ,MAAO,CAAA;AAAA,MACxB,SAAW,EAAA;AAAA,KACZ,CAAA;AAAA;AACH,EAEQ,YAAY,QAA2B,EAAA;AAC7C,IAAA,IAAA,CAAK,SAAY,GAAA,QAAA;AAAA;AACnB,EAEA,GAAqB,GAAA;AACnB,IAAA,IAAA,CAAK,aAAa,IAAK,CAAA,SAAA,CAAU,WAAY,CAAA,IAAA,CAAK,OAAM,MAAU,KAAA;AAChE,MAAA,IAAI,CAAC,IAAA,CAAK,SAAU,CAAA,UAAA,EAAY,IAAM,EAAA;AACpC,QAAM,MAAA,YAAA,CAAa,cAAc,MAAM,CAAA;AAAA;AAEzC,MAAO,OAAA,MAAA;AAAA,KACR,CAAA;AAED,IAAA,OAAO,IAAK,CAAA,QAAA;AAAA;AAEhB;;;;"}
1
+ {"version":3,"file":"AuthDatabase.cjs.js","sources":["../../src/database/AuthDatabase.ts"],"sourcesContent":["/*\n * Copyright 2023 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n DatabaseService,\n resolvePackagePath,\n} from '@backstage/backend-plugin-api';\nimport { Knex } from 'knex';\n\nconst migrationsDir = resolvePackagePath(\n '@backstage/plugin-auth-backend',\n 'migrations',\n);\n\n/**\n * Ensures that a database connection is established exactly once and only when\n * asked for, and runs migrations.\n */\nexport class AuthDatabase {\n readonly #database: DatabaseService;\n #promise: Promise<Knex> | undefined;\n\n static create(database: DatabaseService): AuthDatabase {\n return new AuthDatabase(database);\n }\n\n static async runMigrations(knex: Knex): Promise<void> {\n await knex.migrate.latest({\n directory: migrationsDir,\n });\n }\n\n private constructor(database: DatabaseService) {\n this.#database = database;\n }\n\n get(): Promise<Knex> {\n this.#promise ??= this.#database.getClient().then(async client => {\n if (!this.#database.migrations?.skip) {\n await AuthDatabase.runMigrations(client);\n }\n return client;\n });\n\n return this.#promise;\n }\n}\n"],"names":["resolvePackagePath"],"mappings":";;;;AAsBA,MAAM,aAAgB,GAAAA,mCAAA;AAAA,EACpB,gCAAA;AAAA,EACA;AACF,CAAA;AAMO,MAAM,YAAa,CAAA;AAAA,EACf,SAAA;AAAA,EACT,QAAA;AAAA,EAEA,OAAO,OAAO,QAAyC,EAAA;AACrD,IAAO,OAAA,IAAI,aAAa,QAAQ,CAAA;AAAA;AAClC,EAEA,aAAa,cAAc,IAA2B,EAAA;AACpD,IAAM,MAAA,IAAA,CAAK,QAAQ,MAAO,CAAA;AAAA,MACxB,SAAW,EAAA;AAAA,KACZ,CAAA;AAAA;AACH,EAEQ,YAAY,QAA2B,EAAA;AAC7C,IAAA,IAAA,CAAK,SAAY,GAAA,QAAA;AAAA;AACnB,EAEA,GAAqB,GAAA;AACnB,IAAA,IAAA,CAAK,aAAa,IAAK,CAAA,SAAA,CAAU,WAAY,CAAA,IAAA,CAAK,OAAM,MAAU,KAAA;AAChE,MAAA,IAAI,CAAC,IAAA,CAAK,SAAU,CAAA,UAAA,EAAY,IAAM,EAAA;AACpC,QAAM,MAAA,YAAA,CAAa,cAAc,MAAM,CAAA;AAAA;AAEzC,MAAO,OAAA,MAAA;AAAA,KACR,CAAA;AAED,IAAA,OAAO,IAAK,CAAA,QAAA;AAAA;AAEhB;;;;"}
package/dist/index.cjs.js CHANGED
@@ -3,34 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var authPlugin = require('./authPlugin.cjs.js');
6
- var router = require('./service/router.cjs.js');
7
- var providers = require('./providers/providers.cjs.js');
8
- var router$1 = require('./providers/router.cjs.js');
9
- var createAuthProviderIntegration = require('./providers/createAuthProviderIntegration.cjs.js');
10
- var prepareBackstageIdentityResponse = require('./providers/prepareBackstageIdentityResponse.cjs.js');
11
- var authFlowHelpers = require('./lib/flow/authFlowHelpers.cjs.js');
12
- var OAuthEnvironmentHandler = require('./lib/oauth/OAuthEnvironmentHandler.cjs.js');
13
- var OAuthAdapter = require('./lib/oauth/OAuthAdapter.cjs.js');
14
- var helpers = require('./lib/oauth/helpers.cjs.js');
15
- var CatalogIdentityClient = require('./lib/catalog/CatalogIdentityClient.cjs.js');
16
- var CatalogAuthResolverContext = require('./lib/resolvers/CatalogAuthResolverContext.cjs.js');
17
6
 
18
7
 
19
8
 
20
9
  exports.default = authPlugin.authPlugin;
21
- exports.createRouter = router.createRouter;
22
- exports.defaultAuthProviderFactories = providers.defaultAuthProviderFactories;
23
- exports.providers = providers.providers;
24
- exports.createOriginFilter = router$1.createOriginFilter;
25
- exports.createAuthProviderIntegration = createAuthProviderIntegration.createAuthProviderIntegration;
26
- exports.prepareBackstageIdentityResponse = prepareBackstageIdentityResponse.prepareBackstageIdentityResponse;
27
- exports.ensuresXRequestedWith = authFlowHelpers.ensuresXRequestedWith;
28
- exports.postMessageResponse = authFlowHelpers.postMessageResponse;
29
- exports.OAuthEnvironmentHandler = OAuthEnvironmentHandler.OAuthEnvironmentHandler;
30
- exports.OAuthAdapter = OAuthAdapter.OAuthAdapter;
31
- exports.encodeState = helpers.encodeState;
32
- exports.readState = helpers.readState;
33
- exports.verifyNonce = helpers.verifyNonce;
34
- exports.CatalogIdentityClient = CatalogIdentityClient.CatalogIdentityClient;
35
- exports.getDefaultOwnershipEntityRefs = CatalogAuthResolverContext.getDefaultOwnershipEntityRefs;
36
10
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}