From b7f8c72a4f0a9e50fa7aa9aff358ca75bce11572 Mon Sep 17 00:00:00 2001 From: Markus Thielker Date: Tue, 17 Dec 2024 18:24:59 +0100 Subject: [PATCH] NORY-36: update README.md --- README.md | 25 ++++++++++++++++--------- authentication/README.md | 2 +- dashboard/README.md | 2 +- docker/README.md | 20 +++++++++++--------- 4 files changed, 29 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 3eeceaf..cdfd27b 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,14 @@ # Next-Ory -Get started with ORY authentication quickly and easily. +Get started with the Ory stack quickly and easily. > [!Warning] > This project is work in progress. There is no guarantee that everything will work as it should and breaking changes in > the future are possible. -The goal of this project is to create an easy-to-use setup to self-host [Ory Kratos](https://www.ory.sh/kratos) -and [Ory Hydra](https://www.ory.sh/hydra). It will contain an authentication UI, implementing all self-service flows for -Ory Kratos and Ory Hydra, as well as an admin UI. All UI components are written in NextJS and Typescript, and styled -using shadcn/ui and TailwindCSS. +The goal of this project is to create an easy-to-use setup to self-host the [Ory](https://www.ory.sh) stack with all its +components. It will contain an authentication UI, implementing all self-service flows for Ory Kratos and Ory Hydra, as +well as an admin UI. All UI components are written in NextJS and Typescript, and styled using shadcn/ui and TailwindCSS. ## Getting started @@ -41,6 +40,15 @@ bun install bun run dev ``` +To access the admin dashboard, the `identity` has to be a `member` of the `admin` role. (Relation: roles:admin@< +identity_id>#member)
+The identity ID is displayed on the screen when accessing the dashboard without sufficient permissions.
+Use the identity ID to execute the following script with the identity ID as an argument. + +```bash +sh docker/ory-dev/keto-make-admin.sh +``` + ## Deployment *soon.* @@ -58,11 +66,10 @@ Hydra. It is implemented in a way, that customizing style and page layout is ver ## Admin Dashboard -Right now I am working on the admin dashboard for Ory Kratos. It will provide you with an overview of your instance and -let you manage users, OAuth2 applications and more. It is ***work in progress*** and should not be used in anything -important as it is not yet protected by Keto permissions but only by a valid Kratos session! +Right now I am working on the admin dashboard for all Ory applications. It will provide you with an overview of your +instances and let you manage users, OAuth2 applications and more. It is ***work in progress*** and should be handled +with caution. ![A browser window showing the home page of the dashboard UI in dark mode](./documentation/.img/d-dashboard-dark.png) ![A browser window showing the users page of the dashboard UI in dark mode](./documentation/.img/d-users-dark.png) - diff --git a/authentication/README.md b/authentication/README.md index 0e6613c..40979b3 100644 --- a/authentication/README.md +++ b/authentication/README.md @@ -1,6 +1,6 @@ # Next-Ory - Authentication -This directory contains a NextJS 14 (app router) UI Node, implementing all Ory Kratos and Ory Hydra UI flows. +This directory contains a NextJS 15 (app router) UI Node, implementing all Ory Kratos and Ory Hydra UI flows. ## Stack diff --git a/dashboard/README.md b/dashboard/README.md index 1d8021d..dcca7ae 100644 --- a/dashboard/README.md +++ b/dashboard/README.md @@ -1,6 +1,6 @@ # Next-Ory - Dashboard -This directory contains a NextJS 15 (app router) UI Node, implementing the admin dashboard to the ORY Kratos instance. +This directory contains a NextJS 15 (app router) UI Node, implementing the admin dashboard for the Ory admin APIs. ## Stack diff --git a/docker/README.md b/docker/README.md index da0d4a8..0a39252 100644 --- a/docker/README.md +++ b/docker/README.md @@ -1,6 +1,6 @@ # Starting as a container -Starting this project in a container makes testing it really easy. \ +Starting this project in a container makes testing it really easy. ```bash # move to the environment you want to start (here development) @@ -17,7 +17,7 @@ sh ./hydra-test-consent.sh ``` These commands will start up multiple containers in the background. -Then continue with starting the authentication UI development server as described in the authentication README. +Then continue with starting the authentication UI development server as described in the root README. ## Services and Ports @@ -28,13 +28,15 @@ If you start up the environment on a remote server, you will need to tunnel the | Service | Port (Public) | Description | |----------------|---------------|---------------------------------------------------------------------------| -| Console | 4411 (✗) | Admin dashboard for Kratos data management (soon) | +| Console | 4000 (✗) | Admin dashboard for Kratos data management (soon) | | Authentication | 3000 (✗) | User interface for authentication and account management (no docker yet) | -| ORY Kratos | 4433 (✗) | User management system handling users and self-service flows (Public API) | -| ORY Kratos | 4434 (✗) | User management system handling users and self-service flows (Admin API) | +| Ory Kratos | 4433 (✗) | User management system handling users and self-service flows (Public API) | +| | 4434 (✗) | User management system handling users and self-service flows (Admin API) | | Mailslurper | 4436 (✗) | Mock mailing server (Dashboard) | -| Mailslurper | 4437 (✗) | Mock mailing server (API) | -| ORY Hydra | 4444 (✗) | OAuth2 and OIDC server connected to Kratos (Public API) | -| ORY Hydra | 4445 (✗) | OAuth2 and OIDC server connected to Kratos (Admin API) | -| ORY Hydra | 5555 (✗) | Hydra test application to test the consent flow | +| | 4437 (✗) | Mock mailing server (API) | +| Ory Hydra | 4444 (✗) | OAuth2 and OIDC server connected to Kratos (Public API) | +| | 4445 (✗) | OAuth2 and OIDC server connected to Kratos (Admin API) | +| | 5555 (✗) | Hydra test application to test the consent flow | +| Ory Keto | 4466 (✗) | Read Endpoint for Ory Keto authorization ("Public" API) | +| | 4467 (✗) | Write Endpoint for Ory Keto authorization ("Admin" API) | | Postgres DB | 4455 (✗) | Postgres database for storing user data |