diff --git a/website/docusaurus.config.ts b/website/docusaurus.config.ts index 047673a0738c..572e429b1dad 100644 --- a/website/docusaurus.config.ts +++ b/website/docusaurus.config.ts @@ -3,173 +3,151 @@ import type * as Preset from "@docusaurus/preset-classic"; import { themes as prismThemes } from "prism-react-renderer"; import type * as OpenApiPlugin from "docusaurus-plugin-openapi-docs"; -const config: Config = { - title: "authentik", - tagline: "Bring all of your authentication into a unified platform.", - url: "https://docs.goauthentik.io", - baseUrl: "/", - onBrokenLinks: "throw", - onBrokenAnchors: "throw", - favicon: "img/icon.png", - organizationName: "Authentik Security Inc.", - projectName: "authentik", - themeConfig: { - image: "img/social.png", - navbar: { - logo: { - alt: "authentik logo", - src: "img/icon_left_brand.svg", - href: "https://goauthentik.io/", - target: "_self", - }, - items: [ - { - to: "https://goauthentik.io/blog", - label: "Blog", - position: "left", +module.exports = async function (): Promise { + const remarkGithub = (await import("remark-github")).default; + const defaultBuildUrl = (await import("remark-github")).defaultBuildUrl; + return { + title: "authentik", + tagline: "Bring all of your authentication into a unified platform.", + url: "https://docs.goauthentik.io", + baseUrl: "/", + onBrokenLinks: "throw", + onBrokenAnchors: "throw", + favicon: "img/icon.png", + organizationName: "Authentik Security Inc.", + projectName: "authentik", + themeConfig: { + image: "img/social.png", + navbar: { + logo: { + alt: "authentik logo", + src: "img/icon_left_brand.svg", + href: "https://goauthentik.io/", target: "_self", }, + items: [ + { + to: "https://goauthentik.io/blog", + label: "Blog", + position: "left", + target: "_self", + }, + { + to: "docs/", + label: "Documentation", + position: "left", + }, + { + to: "integrations/", + label: "Integrations", + position: "left", + }, + { + to: "https://goauthentik.io/pricing/", + label: "Pricing", + position: "left", + target: "_self", + }, + { + href: "https://github.com/goauthentik/authentik", + className: "header-github-link", + "aria-label": "GitHub repository", + position: "right", + }, + { + href: "https://goauthentik.io/discord", + className: "header-discord-link", + "aria-label": "GitHub repository", + position: "right", + }, + ], + }, + footer: { + links: [], + copyright: `Copyright © ${new Date().getFullYear()} Authentik Security Inc. Built with Docusaurus.`, + }, + tableOfContents: { + maxHeadingLevel: 5, + }, + colorMode: { + respectPrefersColorScheme: true, + }, + algolia: { + appId: "36ROD0O0FV", + apiKey: "727db511300ca9aec5425645bbbddfb5", + indexName: "goauthentik", + }, + prism: { + theme: prismThemes.oneLight, + darkTheme: prismThemes.oneDark, + additionalLanguages: ["python", "diff", "json", "http"], + }, + }, + presets: [ + [ + "@docusaurus/preset-classic", { - to: "docs/", - label: "Documentation", - position: "left", - }, - { - to: "integrations/", - label: "Integrations", - position: "left", - }, - { - to: "https://goauthentik.io/pricing/", - label: "Pricing", - position: "left", - target: "_self", - }, - { - href: "https://github.com/goauthentik/authentik", - className: "header-github-link", - "aria-label": "GitHub repository", - position: "right", - }, - { - href: "https://goauthentik.io/discord", - className: "header-discord-link", - "aria-label": "GitHub repository", - position: "right", - }, + docs: { + id: "docs", + sidebarPath: "./sidebars.js", + editUrl: + "https://github.com/goauthentik/authentik/edit/main/website/", + docItemComponent: "@theme/ApiItem", + remarkPlugins: [ + [ + remarkGithub, + { + repository: "goauthentik/authentik", + // Only replace issues and PR links + buildUrl: function (values) { + return values.type === "issue" || + values.type === "mention" + ? defaultBuildUrl(values) + : false; + }, + }, + ], + ], + }, + theme: { + customCss: require.resolve("./src/css/custom.css"), + }, + } satisfies Preset.Options, ], - }, - footer: { - links: [], - copyright: `Copyright © ${new Date().getFullYear()} Authentik Security Inc. Built with Docusaurus.`, - }, - tableOfContents: { - maxHeadingLevel: 5, - }, - colorMode: { - respectPrefersColorScheme: true, - }, - algolia: { - appId: "36ROD0O0FV", - apiKey: "727db511300ca9aec5425645bbbddfb5", - indexName: "goauthentik", - }, - prism: { - theme: prismThemes.oneLight, - darkTheme: prismThemes.oneDark, - additionalLanguages: ["python", "diff", "json", "http"], - }, - } as Preset.ThemeConfig, - presets: [ - [ - "@docusaurus/preset-classic", - { - docs: { - sidebarPath: "./sidebars.js", + ], + plugins: [ + [ + "@docusaurus/plugin-content-docs", + { + id: "docsIntegrations", + path: "integrations", + routeBasePath: "integrations", + sidebarPath: "./sidebarsIntegrations.js", editUrl: "https://github.com/goauthentik/authentik/edit/main/website/", - docItemComponent: "@theme/ApiItem", - remarkPlugins: [ - [ - require("remark-github"), - { - repository: "goauthentik/authentik", - buildUrl: (values: any) => - values.type === "issue" || - values.type === "mention" - ? require("remark-github").defaultBuildUrl( - values, - ) - : false, - }, - ], - ], }, - theme: { - customCss: require.resolve("./src/css/custom.css"), - }, - } as Preset.Options, - ], - ], - plugins: [ - [ - "@docusaurus/plugin-content-docs", - { - id: "docsIntegrations", - path: "integrations", - routeBasePath: "integrations", - sidebarPath: "./sidebarsIntegrations.js", - editUrl: - "https://github.com/goauthentik/authentik/edit/main/website/", - }, - ], - [ - "docusaurus-plugin-openapi-docs", - { - id: "api", - docsPluginId: "docs", - config: { - authentik: { - specPath: "static/schema.yaml", - outputDir: "docs/developer-docs/api/reference/", - hideSendButton: true, - sidebarOptions: { - groupPathsBy: "tag", - }, + ], + [ + "docusaurus-plugin-openapi-docs", + { + id: "api", + docsPluginId: "docs", + config: { + authentik: { + specPath: "static/schema.yaml", + outputDir: "docs/developer-docs/api/reference/", + hideSendButton: true, + sidebarOptions: { + groupPathsBy: "tag", + }, + } satisfies OpenApiPlugin.Options, }, }, - }, + ], ], - function nodePolyfillPlugin(context, options) { - return { - name: "node-polyfill-plugin", - configureWebpack(config, isServer, utils) { - return { - resolve: { - fallback: { - fs: false, - net: false, - tls: false, - child_process: false, - canvas: false, - crypto: false, - stream: false, - http: false, - https: false, - zlib: false, - path: false, - util: false, - }, - }, - }; - }, - }; + markdown: { + mermaid: true, }, - ], - markdown: { - mermaid: true, - }, - themes: ["@docusaurus/theme-mermaid", "docusaurus-theme-openapi-docs"], + themes: ["@docusaurus/theme-mermaid", "docusaurus-theme-openapi-docs"], + }; }; - -export default config; diff --git a/website/integrations/services/fortigate-admin/index.md b/website/integrations/services/fortigate-admin/index.md index 02f94043b6e7..ca096aeb08a0 100644 --- a/website/integrations/services/fortigate-admin/index.md +++ b/website/integrations/services/fortigate-admin/index.md @@ -77,6 +77,9 @@ Under **IdP Details**, set the following values: - **IdP Login URL**: https://authentik.company/application/saml/slug-from-authentik/sso/binding/redirect/ - **IdP Logout URL**: https://authentik.company/application/saml/slug-from-authentik/slo/binding/redirect/ + + + FortiGate creates a new user by default if one does not exist, so you will need to set the Default Admin Profile to the permissions you want any new users to have. (I have created a `no_permissions` profile to assign by default.) Under `SP Details` set the **SP entity ID** to `https`. Note it for later use (this is your Audience value of the authentik SP-provider).