From 1b868b6a7ff848b3aa0771ae30418a32ddaa7e46 Mon Sep 17 00:00:00 2001 From: Max Peintner Date: Wed, 23 Nov 2022 14:27:09 +0100 Subject: [PATCH] docs: nextjs b2b example, plausible outbound links script (#4738) * b2b example, link from b2b solution scenario, cleanup nextjs doc * b2b md * repo link * add plausible outbound events * update examples link --- docs/docs/examples/introduction.mdx | 100 ++++++++--- docs/docs/examples/login/nextjs-b2b.md | 177 ++++++++++++++++++++ docs/docs/examples/login/nextjs.md | 20 +-- docs/docs/guides/solution-scenarios/b2b.mdx | 14 +- docs/netlify.toml | 2 +- docs/sidebars.js | 1 + docs/src/css/card.module.css | 1 + docs/static/img/nextjs-b2b/home.png | Bin 0 -> 79321 bytes 8 files changed, 271 insertions(+), 44 deletions(-) create mode 100644 docs/docs/examples/login/nextjs-b2b.md create mode 100644 docs/static/img/nextjs-b2b/home.png diff --git a/docs/docs/examples/introduction.mdx b/docs/docs/examples/introduction.mdx index f9ff8500b6..1e006232c8 100644 --- a/docs/docs/examples/introduction.mdx +++ b/docs/docs/examples/introduction.mdx @@ -2,30 +2,71 @@ title: Overview --- -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; -import {Card, CardWrapper} from '../../src/components/card'; +import Tabs from "@theme/Tabs"; +import TabItem from "@theme/TabItem"; +import { Card, CardWrapper } from "../../src/components/card"; -Get started with ZITADEL quickly by reading a quickstart or by cloning an example from our [ZITADEL examples](https://github.com/zitadel/zitadel-examples) repo. +Get started with ZITADEL quickly by reading a quickstart or by cloning a [ZITADEL example](https://github.com/search?q=topic%3Aexamples+org%3Azitadel) repo. - - - - + + + + + - - + + - + @@ -33,18 +74,33 @@ Get started with ZITADEL quickly by reading a quickstart or by cloning an exampl ## Clone a sample project - - - - + + + + ## Libraries - -| Language | Description | Link | -| ------------ | ---------------------|-------------| -| Go | Go client library for ZITADEL. | [https://github.com/zitadel/zitadel-go](https://github.com/zitadel/zitadel-go) -| .Net | Authentication / Authorization library written in dotnet for the asp.net web application package. | [https://github.com/zitadel/zitadel-net](https://github.com/zitadel/zitadel-net) -| Dart | Dart library for ZITADEL, contains gRPC and API access elements. | [https://github.com/zitadel/zitadel-dart](https://github.com/zitadel/zitadel-dart) | -| Elixir | API Client for the ZITADEL API. | [https://github.com/jshmrtn/zitadel_api](https://github.com/jshmrtn/zitadel_api) | +| Language | Description | Link | +| -------- | ------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| Go | Go client library for ZITADEL. | [https://github.com/zitadel/zitadel-go](https://github.com/zitadel/zitadel-go) | +| .Net | Authentication / Authorization library written in dotnet for the asp.net web application package. | [https://github.com/zitadel/zitadel-net](https://github.com/zitadel/zitadel-net) | +| Dart | Dart library for ZITADEL, contains gRPC and API access elements. | [https://github.com/zitadel/zitadel-dart](https://github.com/zitadel/zitadel-dart) | +| Elixir | API Client for the ZITADEL API. | [https://github.com/jshmrtn/zitadel_api](https://github.com/jshmrtn/zitadel_api) | diff --git a/docs/docs/examples/login/nextjs-b2b.md b/docs/docs/examples/login/nextjs-b2b.md new file mode 100644 index 0000000000..51a2e4fdbc --- /dev/null +++ b/docs/docs/examples/login/nextjs-b2b.md @@ -0,0 +1,177 @@ +--- +title: Next.js B2B Scenario +--- + +This is our Zitadel [Next.js](https://nextjs.org/) B2B template. It shows how to authenticate as a user with multiple organizations. The application shows your users roles on the selected organizations, other projects your organization is allowed to use and other users having a grant to use the application. + +If you need more info on B2B use cases consider reading our guide for the [B2B solution scenario](../../guides/solution-scenarios/b2b.mdx). + +> You can follow along with the template code in our [zitadel-nextjs-b2b](https://github.com/zitadel/zitadel-nextjs-b2b) repo. + +![B2B Application](/img/nextjs-b2b/home.png) + +## What does it do? + +Users with `view` role can view granted projects on their organization which were granted by your organization (owning this portal application). +Users with `admin` role can view granted projects and list users of the selected organization who are granted to use the portal application too. + +## Setup Vendor application and users in ZITADEL + +First we need to create an organization that holds the Vendor's users, projects and applications. + +### Vendor Organization + +Navigate to `https://{YourDomain}.zitadel.cloud/ui/console/orgs` (replace {YourDomain}), and click on the button "New". +Toggle the setting "Use your personal account as organization owner". + +Enter the name `Demo-Vendor`, and click "Create". Then click on that organization. + +### Portal Web Application + +To setup this sample you have to create a project and an application in the vendor organization (`Demo-Vendor`) first. + +Open the Console (`https://{YourDomain}.zitadel.cloud/ui/console/projects`) and create a new project. Let's call it `Portal`. + +Then on the project detail page click on new application and enter a name for this app. +Let's call this one `portal-web`. +Select `Web`, continue, `PKCE`, then enter `http://localhost:3000/api/auth/callback/zitadel` for the redirect, and `http://localhost:3000` for the post redirect. Then press on `create`. + +Copy the "Resource Id" of the project `Portal` as you will need this in your environment configuration file later. + +Click on the application `portal-web`. +On the application detail page click on the section under redirect settings and enable `Development Mode`. This will allow you application to work on `localhost:3000`. +To read the user data and roles from ID Token, go to the section Token Settings and make sure both checkboxes, `User roles inside ID Token` and `User Info inside ID Token` are enabled. +Make sure to save your changes. + +Copy the "Resource Id" of the application `portal-web` as you will need this in your environment configuration file later. + +### Roles + +To setup the needed roles for your project, navigate to your `Portal` project, and add the following roles + +| Key | Display Name | Group | Description | +| :----- | :------------ | :---- | ---------------------------------------------------------------------- | +| admin | Administrator | | The administrator, allowed to read granted projects and to user grants | +| reader | Reader | | A user who is allowed to read his organizations granted projects only | + +Now in the `General` section of the Portal project, make sure to enable `Assert Roles on Authentication`. +This makes sure that roles, which is used by the application to enable UI components, are set in your OIDC ID Token. + +### Service User + +To make the application work you need a service user which loads granted-projects and user-grants for you. +In the B2B-Demo organization, navigate to `Users` in navigation of Console, click on `Service Users` and create a new user. +Let's set its username to `nextjs` and its name to `NextJS`. Then press `create`. + +On the detail page of that user, navigate to "Personal Access Tokens" and add a new entry, set an optional expiration date. + +Copy the generated Token as you will need this in your environment configuration file later. + +Go back to the `Portal` project and add the Service User as Manager (top right). +Make sure to select `Project Owner Viewer` as the management role. + +To show granted projects, go to the `Demo-Vendor` organization and add the Service User as `Org Project Permission Editor` Manager. + +## Configuration + +Now clone this project and navigate to its root folder. +Create a file `.env.local` and copy paste the following: + +```text +NEXTAUTH_URL=http://localhost:3000 +NEXT_PUBLIC_ZITADEL_ISSUER=https://{YourDomain}.zitadel.cloud +ZITADEL_API=https://{YourDomain}.zitadel.cloud +ORG_ID={YourOrgId} +PROJECT_ID={YourProjectId} +ZITADEL_CLIENT_ID={YourClientID} +SERVICE_ACCOUNT_ACCESS_TOKEN={YourServiceAccountSecret} +NEXTAUTH_SECRET=randomsecret +``` + +Replace the values as follows + +`NEXTAUTH_URL`: Base url of this demo app (B2B portal); runs per default on [http://localhost:3000](http://localhost:3000) + +`NEXT_PUBLIC_ZITADEL_ISSUER`: The url to your zitadel instance. When using zitadel.cloud for this demo you can find the domain of your ZITADEL instance in the customer portal. You can also find this information by going to your application `portal-web` and click 'Urls' in the navigation. The variable is prefixed with `NEXT_PUBLIC_` such that it can be accessed from the client. + +`ZITADEL_API`: URL of the Management API. Typically the same as `ZITADEL_ISSUER`. + +`ORG_ID`: We will create an organization during later steps. You can find `{YourOrgId}` by selecting the `Demo-Vendor` organization in Console. `{YourOrgId}` is displayed on top of the organization detail page as "Resource Id". + +`PROJECT_ID`: You can find `{YourProjectId}` by clicking on "Projects" in the navigation and select the Project `Portal`. `{YourProjectId}` is displayed on the top as "Resource Id". + +`ZITADEL_CLIENT_ID`: Having the project `Portal` selected, click on the Application `portal-web`. `{YourClientID}` is displayed as a field in the OIDC configuration, labelled "Client ID" and has the format `12345678@portal`. + +`SERVICE_ACCOUNT_ACCESS_TOKEN`: Setup a service user, add a Personal Access Token and copy the secret here (see below). + +## Install and Run + +To run this sample locally you need to install dependencies first. + +Type and execute: + +```bash +yarn install +``` + +then, to run the development server: + +```bash +npm run dev +# or +yarn dev +``` + +and open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +## Create a customer organization + +### Customer organization + +Create a new organization in Console. Easiest way is to use the organization dropdown on the top left. +Let's call this new organization `Demo-Customer`. + +### Users + +Now switch back to the organization `Demo-Customer` and [create a new user](https://docs.zitadel.com/docs/manuals/user-register) in this organization. +Let's call the first user `Alice Admin`. Create a second user called `Eric Employee`. + +### Manager Role + +We want to enable Alice to assign roles to users in her organization in a self-service manner. +To make this happen, we need give Alice an [Manager Role](https://docs.zitadel.com/docs/concepts/structure/managers) within the Organization `Demo-Customer`. + +Still in the organization `Demo-Customer`, navigate to Organization. Click on the plus on the top right and give `Alice Admin` the Manager Role `Org Owner`. + +Login with your user on the customer organization to validate the setup. + +## Create a project grant + +### Organization Grant + +Switch to the `Demo-Vendor` organization, select Projects in the navigation, and click on `Portal` and then `Grants`. +[Grant all roles of the Project](https://docs.zitadel.com/docs/guides/basics/projects#exercise---grant-a-project) to the organization `demo-customer.{YourDomain}.zitadel.cloud`. + +### Authorization + +As you have guessed, these two users need to be authorized. +On the `Demo-Customer` organization, navigate to Projects and select "Granted Projects" in the sub-navigation. +Select the project portal `Portal` and navigate to "Authorizations". + +Give `Alice Admin` the roles `reader` and `admin`. +`Eric Employee` will get only the role `reader`. + +### Login + +You should be able to login to the Demo Application with `Alice Admin` and see all granted projects. + +You can log out and log in with `Eric Employee` and you should only have access to the granted projects, but not to the Authorizations tab. + +## What next + +You could create another project (eg, `Data Cube`) and grant that project to the customer organization. The granted project should appear after a reload automatically. This gives you an idea of how you could do Service Discovery with ZITADEL. + +You could also build out the code (PRs welcome :wink:) for this application, for example: + +- Create a mock `datacube-web` application and show how SSO between the portal and the application works with ZITADEL. +- Implement a feature in the Authorization tab to assign roles directly from the customer portal. diff --git a/docs/docs/examples/login/nextjs.md b/docs/docs/examples/login/nextjs.md index 0951dd288d..00a6066bce 100644 --- a/docs/docs/examples/login/nextjs.md +++ b/docs/docs/examples/login/nextjs.md @@ -8,25 +8,15 @@ This is our Zitadel [Next.js](https://nextjs.org/) template. It shows how to aut ## Getting Started -First, we start by creating a new NextJS app with `npx create-next-app`, which sets up everything automatically for you. To create a project, run: +### Install dependencies + +To install the dependencies type: ```bash -npx create-next-app --typescript -# or -yarn create next-app --typescript +yarn install ``` -### Install Authentication library - -To keep the template as easy as possible we use [next-auth](https://next-auth.js.org/) as our main authentication library. To install, run: - -```bash -npm i next-auth -# or -yarn add next-auth -``` - -To run the app, type: +then to run the app: ```bash npm run dev diff --git a/docs/docs/guides/solution-scenarios/b2b.mdx b/docs/docs/guides/solution-scenarios/b2b.mdx index 9760d77c99..2c8f1156c4 100644 --- a/docs/docs/guides/solution-scenarios/b2b.mdx +++ b/docs/docs/guides/solution-scenarios/b2b.mdx @@ -2,7 +2,7 @@ title: B2B --- -import { B2B } from '../../../src/components/b2b'; +import { B2B } from "../../../src/components/b2b"; ## Business to Business @@ -13,6 +13,7 @@ In ZITADEL a B2B organization represents a business partner or partner who typic B2B can be a simple scenario where an organization only shares one of its projects with another organization or have a more complex case where an organization is offering a portal application to all its partners with included (self)administration. + ## Sample scenario Octagon is a fictitious company which is used throughout this guide to explain the details and key concepts of such a B2B scenario. @@ -21,9 +22,10 @@ Octagon tries to solve multiple tasks in the banking field. Its portfolio includ ### Portal Application Octagon has a **Portal application** where its employees can access their account and list all applications they are allowed to use. -Employees work for a department within Octagon or for Octagon itself. +Employees work for a department within Octagon or for Octagon itself. Some of the users have enhanced features because they supervise certain teams. Those can onboard new employees and manage their roles and features. Target groups of the application can be split into: + - **Employees:** users who are using the application as a starting point for their work. - **Supervisors:** users who are mainly using the application to manage users and their access of their department. - **Administrators:** this users are able to grant additional organizations or departments and elect supervisors. @@ -39,7 +41,7 @@ In order to define the need of the **Portal Application** some planning consider ### Login You can decide whether a organization is preselected for the login or if the user is redirected to the default login screen. You can send the user to a specific organization by defining the organization in a custom scope. (primary domain) -Settings to the branding or the login options of the organization can be made from the organization section in [Console](https://{your_domain}.zitadel.cloud/ui/console/org). +Settings to the branding or the login options of the organization can be made from the organization section in [Console](https://{your_domain}.zitadel.cloud/ui/console/org). The behaviour of the login branding can be set in your projects detail page. You can choose the branding of the selected organization, the user resource owner, or the projects resource owner. ### Organizations @@ -56,7 +58,7 @@ In our sample scenario, we assume to have the following users: - **Bill:** is employed at Octagon as Administrator of the Portal Application. Bill also uses a Microsoft Account in combination with a Security Key to secure his account. After having determined the constellation of the organizations and its users, all the necessary data (Portal project with roles and app, users, login requirements, identity providers, branding) should be set up in [Console](https://{your_domain}.zitadel.cloud/ui/console/org). -A B2B sample application for NextJS can be found in our [Example Repo](https://github.com/zitadel/zitadel-examples). +A B2B [sample application](https://github.com/zitadel/zitadel-nextjs-b2b). for NextJS can be found [here](../../examples/login/nextjs-b2b). To allow another organization to use a project, a project grant has to be created. Upon creation, roles for a grant can be limited to a subset of the total project roles. @@ -70,7 +72,7 @@ In this scenario, Dimitri and Michael share the same organization Pentagon, wher > Note: Roles are meant for internal business logic and therefore need to be validated separately, none of the users described are allowed to create user grants, at least if they do not own a ZITADEL manager role. -If you made a dashboard where some users are able to create user grants, the Management API to do such operations should be triggered with the personal access token of the users, not with a token of a machine user, to create a meaningful audit log. +If you made a dashboard where some users are able to create user grants, the Management API to do such operations should be triggered with the personal access token of the users, not with a token of a machine user, to create a meaningful audit log. If you had such a use case, ZITADEL manager roles must be assigned to those users. ### Noteworthy @@ -82,4 +84,4 @@ In such a case with this high potential of scalability where user counts can gro - [Creating an organization](../manage/console/organizations) - [Organization Branding](../manage/customize/branding) -- [Authorization](../integrate/oauth-recommended-flows) \ No newline at end of file +- [Authorization](../integrate/oauth-recommended-flows) diff --git a/docs/netlify.toml b/docs/netlify.toml index 939f53f66b..e77bce6989 100644 --- a/docs/netlify.toml +++ b/docs/netlify.toml @@ -3,7 +3,7 @@ [[redirects]] from = "/proxy/js/script.js" - to = "https://plausible.io/js/plausible.js" + to = "https://plausible.io/js/script.outbound-links.js" status = 200 force = true diff --git a/docs/sidebars.js b/docs/sidebars.js index bc82d64342..bbd2521b3e 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -9,6 +9,7 @@ module.exports = { "examples/login/react", "examples/login/flutter", "examples/login/nextjs", + "examples/login/nextjs-b2b", ], collapsed: false, }, diff --git a/docs/src/css/card.module.css b/docs/src/css/card.module.css index 1a37215a96..315cb02f6a 100644 --- a/docs/src/css/card.module.css +++ b/docs/src/css/card.module.css @@ -29,6 +29,7 @@ background-position: center; padding: 0.5rem 0; pointer-events: none; + box-shadow: none !important; } .fillspace { diff --git a/docs/static/img/nextjs-b2b/home.png b/docs/static/img/nextjs-b2b/home.png new file mode 100644 index 0000000000000000000000000000000000000000..966ecddb1ff454863fb7b117881d1e94f196ca18 GIT binary patch literal 79321 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›}|PJT?dPs*qS$+75Z{Y)z55I1`e6p9?xMIQ;P#_ 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 literal 0 HcmV?d00001