Commit Graph

15 Commits

Author SHA1 Message Date
Alexandre Alves 4121d5af7c
Support Single Logout for OIDC Auth Providers (#15412)
* wip

* add support for Single Logout for OIDC providers

* enforce endSessionEndpoint field as required

* fix reactiveness on header menu with auth providers + add validation for endSessionEndpoint field as url in oidc auth provider edit interface

* use after save hook to re-fetch auth providers once config options for one has been saved + remove fvValid code and keep isUrl check in validationPassed in oidc edit view

* fix unit test

* reset value of SLO radio input in providers
2025-09-23 09:36:12 +01:00
Cody Jackson 031056a406 Switching from $cookies to a cookies store to make data flow more consistent
fixes #11392
2025-09-11 16:13:48 -07:00
Neil MacDougall 6b7b4957af
Add auth provider config page for Amazon Cognito (#14422)
* Add auth provider config page for Amazon Cognito

* Fix e2e test

* Fix issue with cross-origin and the popup

* Change name on login screen and reduce code change

* Fix lint

* Fix e2e tests - fix bugs in po change

* Update auth-config.js

* Remove rancher url from test

* Address PR feedback

* Use selection grid

* Use selection grid po correctly

* Address Phil's PR feedback
2025-06-06 17:01:01 +01:00
Giuseppe Leo b3babd5cf8
Generic OIDC group scope is not sent in the request formed by the UI (#13514)
* Add basic store auth tests for redirect

* Define mixin tests

* Correct tests to cover all the cases correctly and ensure that this function works as expected

* Add scopes to the redirectTo request when testing the model

* Add unit tests for action test

* Add comment to save auth config method

* Correct unit tests

* Correct test to avoid the same term to be used for different parts

* Correct key value from scope to scopes to match existing implementation

* Update tests to use scopesJoinChar

* Add further tests for merging default scopes and UI scopes

* Add joinStringList function

* Correct scopes merging issues
2025-02-26 10:49:48 +01:00
Phillip Rak 5beb8b8384 Set `openLdapConfig` to `null`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2025-02-11 17:35:16 -07:00
Phillip Rak 627952a522 Unit test updates
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:09:54 -07:00
Cody Jackson d5ce4fff2e Run the vue3 migration script
Commands run:

➤ yarn migrate
➤ git clean -fdx
➤ nvm use 20
➤ yarn
2024-08-22 16:05:36 -07:00
Alexandre Alves 340d41031e
SAML SLO support (#11182)
* wip

* add logout action according to logic (SAML - logoutAll) + add modal to prompt user to select SLO logout type when logging out of Dashboard

* update authProvidersInfo method to allow for a getter usage in order to make it store reactive

* wip - missing final plumbing for the finalRedirectUrl

* bug fix for non-reactive header logout when auth provider is enabled

* adjust slo UI elements to match expected UI/UX

* minor adjustments + pr cleanup

* cleanup

* handle promise rejection for standard users (apparently they cannot get the schema)

* Updates
- Tweaked text (to be reviewed)
- Removed some code smells
- Ensure rancher logout via modal uses same process as normal logout
- Use async buttons in logout modal
- Add cancel to log out modal
- Fix logout on fail-whale page

* Add error handling (WIP with Andreas, does not currently reach final redirct / verify route)

* Fix check for IS_SLO

* Only allow optional auth provider log out if logged in auth provider

* Fix error message (SLO failures still result in rancher log out)

* check complete slo flow + add special copy when doing a slo logout

* Update shell/dialog/SloDialog.vue

Co-authored-by: Phillip Rak <rak.phillip@gmail.com>

* Update shell/edit/auth/saml.vue

Co-authored-by: Phillip Rak <rak.phillip@gmail.com>

* update syntax from phil pr review

* Fix logout modal on diangostics, about, etc pages that use plain template

* Remove PromptRemove from diagnostic page
- it uses the plain template which now contains it
- caused x2 modals to show

---------

Co-authored-by: Richard Cox <richard.cox@suse.com>
Co-authored-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 19:16:06 +01:00
Jordon Leach bd70d4ca56
Switch context for generic oidc provider to the genericOIDCConfig type (#11326) 2024-07-02 08:20:47 -04:00
Jordon Leach c6a56aa60e
Add generic OIDC provider support (#11112)
* Add generic oidc provider support

* Add oidc provider icon - filter genericoidc provider - update tests

* Automatically set scope - disable advanced inputs initially

* Update oidc login button with unique display name

* Remove default scope for oidc provider

* Add acrValue - move scope inputs

* Clean up validation - update wording - remove rogue c&p

Fix unit tests

* Remove required authEndpoint input

* Require authEndpoint for keycloakoidc - clean up validation
2024-06-26 13:31:01 -04:00
Neil MacDougall f5431cbbaf
Add i18n string usage checker script (#10805)
* Add i18n string usage checker script

* Fix lint issues

* Add i18n check to GH Action workflow

* Update to node 16

* Update workflow to run script properly

* Allow script to return okay if when there are errors

* Add documentation

* Remove commented code
2024-05-02 20:52:15 +01:00
Richard Cox b464d15ee0
Integrate new schemaDefinitions endpoint (#10141)
* resource edit AS yaml

* fix cruresource (yaml from form)
- lazy load the schemaDefinitions when needed, avoids sync all to createYaml before we have an async chance to fetch schemaDefinitions

* Fix questions
- there are only four places we use questions, none of which use schema, this is just to be safe

* cluster scan, plugins/fieldsForDriver, defaultFor, validationErrors

* pathExistsInSchema
- used to optionally show conditions tab/list in resource detail view
- logs of things in ingress list/edit

* createPopulated / defaultFor
defaultFor requires resourceFields, it's only used by createPopulated in one place to support machine configs without components

* wip

* WIP MONITORING.SPOOFED
- these aren't spoofed types, but secondary schemas
- testing fix blocked, primary schema's have resourceFields

* Move steve specific (resourceField) code to steve models
- create models for steve schemas and apply to cluster and management stores
- move resoureField based validationto steve model
- move pathExistsInSchema to steve store getter
- don't fetch schemaDefinitions on start up when saving prefs (not needed and blocking)

* comments / improvements

* (untested) refactoring

* Fix alertmanager definitions, add retry definition fetch

* Fix pathExistsInSchema for path length > 2

* Fix questions that accept schemas
- tested by adding Questions to random page and the node schema

* Fix to saving configmap part 1
- the save works but doesn't show data. the yaml is the same as before. debug info added

* Validation by resourceFields is a norman specific thing, so make it such

* small refactor

* Tidying up

* Remove rebase junk

* fix linting and unit tests

* fix unit tests

* fix linting from fix for test....

* Tidying up, fix alertmanagerconfig

* Remove unit test todos

* add unit tests for resource fields

* sdssdf

* Add unit tests for pathExistsInSchema

* JS --> TS

* Store schemas in local singleton cache to avoid hitting store

* fix minor changes from review

* cruresource changes following review
- improvement - remove spurious canDiff
- createResourceYaml - pass in resource to use instead of calc in code

* WIP changes to parseType

* Fix generic cloud credential and node driver forms

* handle missing reactivity given schema definitions not in store

* fix and add unit tests for `parseType`

* Fix create-yaml test

* Changes following review
- improved comments
- SchemaDefinitionCache is now per store (and is reset as such)
- typeRef now uses parseType

* Fix dep loop by moving route based helps in auth out to utils file

* fix unit tests

* Changes following review
2024-02-28 17:08:35 +00:00
Alexandre Alves 6637583874
remove "process." mentions from Dashboard and adjust code (#10119)
* remove process.client and process.server mentions and adjust code

* fix a couple of missing conditions for process.server

* remove commented line

* remove process.static

* fix lint errors

* uncomment code

---------

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2023-12-13 08:41:26 +00:00
Alexandre Alves c6a790929d
add disable auth provider prompt modal (#7729)
* working on disable auth provider prompt modal

* finish adding modal for confirming disable of auth provider

* cleanup

* address PR comments

Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2022-12-22 15:34:32 +00:00
Richard Cox 25acc1f8eb Plugins: Rejig files to new shell locations (#5623)
* Doc

* v0.7.0

* v0.7.1

* v0.7.2

* Add creators

* v0.1.14

* v0.1.17

* Add Yarn link

* Tidy ups and typos

* Allow models to be loaded from plugins

* v0.1.15

* v0.1.18

* v0.6.6

* Improve readme, fix cyperss log msg

* v0.1.17

* v0.1.19

* v0.6.7

* v0.6.8

* Fix logo ref when in shell

* Fix lint issues

* Fix error in example

* Fix script to work on linux

* Add ability to revert moves without losing changes

* Fix bug with custom models in a plugin

* Fix build of UI packages

* Add dist-pkg to .eslintignore

* Pull out util from extend-router to prevent router being pulled in UI packages

* Update PLUGINS.md

* Remove duplicate dependency

* Reduce size of built UI packages

* Share codemirror. Other tidy ups

* Further improvements

* Tidy ups to support i18n in plugins

* Clen up add comments

* More clean-ups and comments added

* Rename from extension to plugin

* Missed file in rename

* v0.6.9

* TIdy ups following rename

* v0.1.20

* v0.1.21

* More refactor and tidy up

* v0.1.22

* v0.1.18

* v0.1.19

* v0.1.23

* v0.6.10

* Version Packages. Improve naming. Unload.

* v0.6.11

* v0.1.20

* v0.1.21

* v0.1.24

* v0.6.12

* v0.1.25

* v0.1.22

* v0.6.13

* Fix issues when plugin is builtin

* Add missing files

* Fix lint issues and watcher ignores

* Fixes following review

* v0.1.28

* v0.1.31

* v0.6.20

* Fix coer.js version

* Fix bug where plugins included via npm don't work

* Changes post merge

* Move plugins doc to dev guide, add note at top of README

* Update cypress version

* Add note about the reset --hard in rejig -d

* Fixes post merge

* Rename @ranch to @rancher and ad plugins

* Improve routes support, add package assets support

* Add uninstall hooks and pass interal opts

* Fix rejig script

* Minor fixes

* Routing tweaks
- attempted to improve `addRoutes` typing, failed a lot
- improved typings in plugins.ts
- added "@pkg/*" entry and vue-shim (for importing components) to the pkg creator
- fixed some linting
- safely fail when Verdaccio isn't running
- fixed some typos

* Remove frontmatter-markdown-loader reference from nuxt-config

* Revert "Remove frontmatter-markdown-loader reference from nuxt-config"

This reverts commit 29ef6f2f7b.

* Exclude creators from dashboard build

* Revert "Exclude creators from dashboard build"

This reverts commit 8ede93ee7c.

* Ingore creators via tsconfig
- We're still susceptible with vue shims in multiple packages
- Need to determine why packages can't use shim from route
- Probably need to move `./vue-shim.d.ts` in to `./shell`. Needs testing with a pkg that imports a component

* After rejig

Co-authored-by: Neil MacDougall <nmacdougall@suse.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
2022-05-10 10:04:02 +01:00