From c34c8050a38d190cac71774d273df71bdc2855e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20Bara=C3=BAna?= Date: Thu, 8 May 2025 09:08:36 -0300 Subject: [PATCH] Docs for OIDC groups authorization (#2996) --- docs/images/oidc_groups_auth.png | Bin 0 -> 94145 bytes docs/teams/intro_to_teams.md | 2 +- docs/teams/oidc_groups.md | 88 +++++++++++++++++++++++++++++++ mix.exs | 5 +- 4 files changed, 92 insertions(+), 3 deletions(-) create mode 100644 docs/images/oidc_groups_auth.png create mode 100644 docs/teams/oidc_groups.md diff --git a/docs/images/oidc_groups_auth.png b/docs/images/oidc_groups_auth.png new file mode 100644 index 0000000000000000000000000000000000000000..c6bb478f258b22d3faecad8349d0604c8b099f9a GIT binary patch literal 94145 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�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�Gbh_nBkL44A!wZx;sF!3Ms;BAo}66&XJneqA^lL8$D zZF?9eg(}A*_ztupMI!nji2j(oAo$*pMW1ru5nGV;$ zwDuw$t=6Dox!Rt0N%e3_Bq>taefu;R;+e7%JTT+_}shIsmeqoq$d_q0DlT@NR z^dRf`UvX}j&WpwIG_0-)qK{)Y+bM*M<@{vz?l*5hr zU{frsEQCaiiI)^pf1k9@I&G7Dd6Uw7EG^_bBHr^~J%Ta}4+_X6C2I2&KzkYR^kR5{ zw3uP%_|j87zUi4eaB)hfWz#Env;ZO*6vW9%(UGZ9{I+DjRPCKJ_jyZoT%F15tmENMvOcw9sy z8YVs6uj6r$_4IspWuuBqejJ$U(ad_8&JDAZnW7NX3u=01FI$~sHq()>4G-W6!cQ8Y z@1eedkQT`%BL`nI>A}GH0J4-vSKZ5l&*$`!3PkL#(>x?ptc2bpn)lizqf{llvb-R~ zxlJUp(x@AU$Qgf7c5<@`LaO%$TL3{+2_&K^#@bW|pGf|dkXV#;B_V<0hBvJQIhF$L zjOcsbx)D^l{83d5mT0-aF4)&?KPhGjH5SW%95_*srZPU8e3tVKMx^skU7aP{toxl7 zST%VkU*Xh+IZp;xqSU zpF`=~48ssF9fu8(+(+}Z6a#h+55qSp;>nyNxuMSab6;-|E?VY#Z%G>?nU2C24HKb6 zc*i=2ZpQ`8X8)$dt;q8%&=R8x7VYm}2x66>nBTioCQO^bH?Gyv(S@D z=#A+aI~mz4<&ULRt63Gr!sPVMAvoQpwU=B{?5sE&@Y0=pB@KD%p#hs2vy&VS%D!sAHhi z-@AS2^@L0M-LO&NNm^2kEk?HveV)(C?iJUQXj^QT3zy)RAi#}{I=5wEqxQ+#2;1#t z-g?Gn+sKyveEImKiQ=M9>neW~XB&(`xh|9o64s`xFpaqFTa}Ug&s$CKH<$Ab$j&tX zGL=+p*e9~^y#-mJUlWwJF^7HZoWR36HgMAx=FQs4kjs-L*0Jw+g{uqSqUR1zKi17b zf2!M}IJyAii&l>Zsvc!astOr$z@*UL}q%3~iv^I)2}%vi0@! zBRO(9+DAV6aF&QG+~kD<!~eE_vl2i!kyg+xuQof!JHi#6OZo9-*F`Xs^!!bTb$ zxc#|}SzLq0Bu^>nd+7UxE<~@~Cx1HD{$j;IzJDPqP$S2umVkmDmq@Nfy$({#o(e8V z*xNB1TV*fS_BD~ZHar+PgXq5|_PP|}r7I3sKGhlKRVu)S`SN3RZUxmcc)T55i)rl)}j_2lK{?K&1I)B&0$>a4P1KSoJ*S?92gcqx{mhore;+)(ySslXc zb6SYZe+{dQux30Ld3x_lNZiql7=&ftW0u=1|ci>%Pn__@0!Xko01rMZS%N9L<~ z`vSyndkPeMu8hF)^sb!%5&_;On1FY$``g*m7 z$Rv<{-g5be9^GIai;$Vh3-39k%!In*;_Zd|J|q_FNp;~`V#{oQTeepcpJhz!R(xp! zWK4~Jzqo8HeL&JaKRj0;XXz18d45IT0Z5K{%wMucF^;zSSZ+ zelKsy{&1B<1iMqhd88|9DuENe_V{uNf0i&p46Y=II z-91x)s#(XebERxXSY^v^jvNVFHKx#!EzyhIV$53zTe^xwnc~1lX6l?N*<8fxP z)XFd1KYD2aSdvm2vd{AnR~n`jXHPStiBFt9yj!xUMS4h~&6FuR8{YVrjK^1hHw*sZo-#lJb`?*V7@=8Oshqw%zj$9@fbTQ7uum}`<;B=mN#S}wwexsm?xQYF2 zGbf(|rEn=Ki3nE6fUSYGrRceJZdMEUB*d$e*tLAoUce;TGpJdurCedptyPP~f7y0Ld!u7}eYC&Wenk9%iZ-BAo})%WjpX zRA)zE9Xrf7H;W4nxHeFA@Y+~}q#io7y z*Y;}xc@%d0UtzXTO!DqdLTlMyoZ0qym7;od@Vvfd2!y)WM7xMplypvThvXW@o6+ pgnETKl$~8cm$NB<_AC;_ literal 0 HcmV?d00001 diff --git a/docs/teams/intro_to_teams.md b/docs/teams/intro_to_teams.md index 865d071d2..4f3b4f80c 100644 --- a/docs/teams/intro_to_teams.md +++ b/docs/teams/intro_to_teams.md @@ -11,7 +11,7 @@ Besides deployment automation, it also offers the following features: - [Email-domain (Google, Microsoft, etc)](email_domain.md) - [OIDC (Okta, Microsoft Entra, etc)](oidc_sso.md) - Authorization - - based on groups from an OIDC identity provider + - [based on groups from an OIDC identity provider (Okta, Microsoft Entra, etc)](oidc_groups.md) - [Shared Livebook secrets](shared_secrets.md) - [Shared Livebook file storages](shared_file_storages.md) diff --git a/docs/teams/oidc_groups.md b/docs/teams/oidc_groups.md new file mode 100644 index 000000000..060b55f91 --- /dev/null +++ b/docs/teams/oidc_groups.md @@ -0,0 +1,88 @@ +# OIDC groups authorization + +Livebook Teams allows you to control access to your app servers and Livebook apps based on group membership in your OIDC identity provider (IdP). + +![](images/oidc_groups_auth.png) + +> #### Livebook version requirement {: .info} +> Requires Livebook v0.16 or newer. + +## Overview + +OIDC groups authorization enables you to: + +- Restrict access to your Livebook apps and app servers based on group membership +- Control which users can access specific apps using slug prefix filtering +- Integrate seamlessly with your existing OIDC SSO provider (Okta, Microsoft Entra, etc.) + +## Prerequisites + +Before configuring OIDC groups authorization, ensure you have: + +1. **Configured an OIDC provider** in your Livebook Teams organization. If you haven't done this yet, follow the instructions in our [OIDC SSO documentation](oidc_sso.md). + +2. **Configured your OIDC identity provider** to include group information in the ID tokens: + - **Okta**: [Customize tokens with a groups claim](https://developer.okta.com/docs/guides/customize-tokens-groups-claim/main/) + +## Configuration + +### 1. Enable authorization via OIDC SSO groups + +To enable authorization via OIDC SSO groups for a deployment group: + +1. Log in to Livebook Teams +2. Navigate to the **Deployments** panel +3. Click **Edit** on the deployment group where you want to enable authorization +4. Go to the **IAM** section (requires "admin" role in the organization) +5. Ensure that **Authenticate via Livebook Teams** is enabled +6. Enable **Authorize via OIDC SSO groups** + +### 2. Add group authorization + +Once authorization is enabled, you can add group access rules: + +1. Click the **Add group** button +2. Select one of your configured OIDC identity providers +3. Enter the name of a group from your identity provider +4. Choose the **Access type**: + - Full access + - Slug prefix access +5. Click the **Add group** button to save the rule + +You can add multiple groups with different access types to configure your authorization strategy. + +## Access types explained + +### Full access + +Users who belong to groups with full access can access: +- The app server admin interface* +- All Livebook apps deployed to this deployment group + +**Notice that [Admin authentication](authentication.md#admin-authentication) configs will also apply if configured.* + +### Slug prefix access + +Users who belong to groups with slug prefix access can only access Livebook apps whose URL slugs start with the specified prefix. + +For example, with the slug prefix "**finance-**", users can access an app whose slug is "**finance-**budget", but not one with the slug "**hr-**budget". + +This allows you to create role-based access control based on your organization's existing group structure. + +## Testing the Configuration + +To verify the configuration is working: + +1. Sign out of any current Livebook Teams sessions +2. Navigate to an app server or Livebook app in the deployment group where you've enabled OIDC groups authorization +3. You will be prompted to authenticate through your OIDC provider +4. After authentication, the system will check your group membership +5. You will only be granted access if you belong to one of the configured groups with appropriate permissions + +## Troubleshooting + +If users are experiencing access issues: + +1. Verify the group name matches exactly as defined in your IdP (group names are case-sensitive) +2. Check that the user is a member of the specified group in your IdP +3. Ensure your OIDC provider is properly set up to include group names inside the ID token diff --git a/mix.exs b/mix.exs index fb8e22c06..fb5ee6ea6 100644 --- a/mix.exs +++ b/mix.exs @@ -257,10 +257,11 @@ defmodule Livebook.MixProject do "docs/deployment/fips.md", "docs/deployment/nginx_https.md", "docs/teams/intro_to_teams.md", - "docs/teams/shared_secrets.md", - "docs/teams/shared_file_storages.md", {"docs/teams/email_domain.md", title: "Email domain auth"}, {"docs/teams/oidc_sso.md", title: "OIDC SSO"}, + "docs/teams/oidc_groups.md", + "docs/teams/shared_secrets.md", + "docs/teams/shared_file_storages.md", "docs/authentication/basic_auth.md", "docs/authentication/cloudflare.md", "docs/authentication/google_iap.md",