Implement end_session endpoint option

Created on 20 November 2022, about 2 years ago
Updated 10 November 2023, about 1 year ago

Problem/Motivation

The end_session endpoint is currently not supported in the plugin settings. Promptless logout would be great.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Feature request
Status

Fixed

Version

2.0

Component

Code

Created by

🇩🇪Germany webflo

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • 🇺🇸United States moshe weitzman Boston, MA

    I am seeing a warning when this setting is not populated. This is optional, right?

    Warning: Undefined array key "end_session_endpoint" in Drupal\openid_connect_windows_aad\Plugin\OpenIDConnectClient\WindowsAad->getEndpoints() (line 278 of modules/contrib/openid_connect_windows_aad/src/Plugin/OpenIDConnectClient/WindowsAad.php).
    
  • 🇺🇸United States moshe weitzman Boston, MA

    My fault. I was missing a config key.

  • 🇳🇿New Zealand RoSk0 Wellington

    I'm seeing the same warning now and I think that shouldn't be happening .

    Update openid_connect_windows_aad_update_9205() introduced here was only updating configurations where ->condition('settings.enable_single_sign_out', TRUE, '=') . To me this means there is a bug, either in the update code or in the main module which tries to use optional property without checking for existence first.

    Can we please have a clarification if this new "end_session_endpoint" property is optional or now.

    Also, it wasn't added to the config schema here. I believe this should be re-opened and worked on , but don't have permission to do so.

  • 🇺🇸United States dreg

    Bumping as I'm seeing the same issue. If set to empty I get the same:
    Warning: Undefined array key "end_session_endpoint" in Drupal\openid_connect_windows_aad\Plugin\OpenIDConnectClient\WindowsAad->getEndpoints() (line 278 of modules/contrib/openid_connect_windows_aad/src/Plugin/OpenIDConnectClient/WindowsAad.php).

  • 🇫🇮Finland heikkiy Oulu

    Encountering this also.

    We updated our site to Drupal 10 from Drupal 9 and at the same time updated OpenID Connect to 3.0 alpha2 and OpenID Connect Microsoft Azure AD client to 2.0.0-beta5. Database updates and configurations are updated but after logging in I get the same warning in the page. Tried running drush updb and drush cim again but there are no changes incoming.

    It seems like this issue should be reopened.

    Here is the complete stacktrace

    Warning: Undefined array key "end_session_endpoint" in Drupal\openid_connect_windows_aad\Plugin\OpenIDConnectClient\WindowsAad->getEndpoints() (line 290 of modules/contrib/openid_connect_windows_aad/src/Plugin/OpenIDConnectClient/WindowsAad.php).
    Drupal\openid_connect_windows_aad\Plugin\OpenIDConnectClient\WindowsAad->getEndpoints() (Line: 68)
    Drupal\openid_connect_windows_aad\Plugin\OpenIDConnectClient\WindowsAad->__construct(Array, 'windows_aad', Array, Object, Object, Object, Object, Object, Object, Object, Object, Object) (Line: 88)
    Drupal\openid_connect_windows_aad\Plugin\OpenIDConnectClient\WindowsAad::create(Object, Array, 'windows_aad', Array) (Line: 21)
    Drupal\Core\Plugin\Factory\ContainerFactory->createInstance('windows_aad', Array) (Line: 83)
    Drupal\Component\Plugin\PluginManagerBase->createInstance('windows_aad', Array) (Line: 62)
    Drupal\Core\Plugin\DefaultSingleLazyPluginCollection->initializePlugin('windows_aad') (Line: 49)
    Drupal\openid_connect\Plugin\OpenIDConnectClientCollection->initializePlugin('windows_aad') (Line: 80)
    Drupal\Component\Plugin\LazyPluginCollection->get('windows_aad') (Line: 83)
    Drupal\Core\Plugin\DefaultSingleLazyPluginCollection->setConfiguration(Array) (Line: 99)
    Drupal\Core\Plugin\DefaultSingleLazyPluginCollection->addInstanceId('windows_aad', Array) (Line: 55)
    Drupal\Core\Plugin\DefaultSingleLazyPluginCollection->__construct(Object, 'windows_aad', Array) (Line: 37)
    Drupal\openid_connect\Plugin\OpenIDConnectClientCollection->__construct(Object, 'windows_aad', Array, 'windows_aad') (Line: 142)
    Drupal\openid_connect\Entity\OpenIDConnectClientEntity->getPluginCollection() (Line: 118)
    Drupal\openid_connect\Entity\OpenIDConnectClientEntity->getPlugin() (Line: 103)
    Drupal\openid_connect\Form\OpenIDConnectLoginForm->submitForm(Array, Object)
    call_user_func_array(Array, Array) (Line: 114)
    Drupal\Core\Form\FormSubmitter->executeSubmitHandlers(Array, Object) (Line: 52)
    Drupal\Core\Form\FormSubmitter->doSubmitForm(Array, Object) (Line: 597)
    Drupal\Core\Form\FormBuilder->processForm('openid_connect_login_form', Array, Object) (Line: 325)
    Drupal\Core\Form\FormBuilder->buildForm('Drupal\openid_connect\Form\OpenIDConnectLoginForm', Object) (Line: 224)
    Drupal\Core\Form\FormBuilder->getForm('Drupal\openid_connect\Form\OpenIDConnectLoginForm') (Line: 75)
    Drupal\openid_connect\Plugin\Block\OpenIDConnectLoginBlock->build() (Line: 171)
    Drupal\block\BlockViewBuilder::preRender(Array)
    call_user_func_array(Array, Array) (Line: 111)
    Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 797)
    Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 386)
    Drupal\Core\Render\Renderer->doRender(Array) (Line: 458)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
    Drupal\Core\Render\Renderer->render(Array) (Line: 474)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 78)
    __TwigTemplate_f67edcee2f550df90670c7ce285a7957->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array, Array) (Line: 40)
    Twig\TemplateWrapper->render(Array) (Line: 53)
    twig_render_template('themes/custom/nextgen_admin/templates/page.html.twig', Array) (Line: 372)
    Drupal\Core\Theme\ThemeManager->render('page', Array) (Line: 445)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
    Drupal\Core\Render\Renderer->render(Array) (Line: 474)
    Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 86)
    __TwigTemplate_3983474a22c0845722e4fb9729f80953->doDisplay(Array, Array) (Line: 394)
    Twig\Template->displayWithErrorHandling(Array, Array) (Line: 367)
    Twig\Template->display(Array) (Line: 379)
    Twig\Template->render(Array, Array) (Line: 40)
    Twig\TemplateWrapper->render(Array) (Line: 53)
    twig_render_template('core/themes/claro/templates/classy/layout/html.html.twig', Array) (Line: 372)
    Drupal\Core\Theme\ThemeManager->render('html', Array) (Line: 445)
    Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
    Drupal\Core\Render\Renderer->render(Array) (Line: 158)
    Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 592)
    Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
    Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
    Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
    call_user_func(Array, Object, 'kernel.view', Object) (Line: 111)
    Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 187)
    Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 76)
    Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
    Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 106)
    Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 85)
    Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
    Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 51)
    Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object, 1, 1) (Line: 704)
    Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
    
    
  • 🇨🇦Canada joseph.olstad

    Yes I also noticed this today and we're using the latest release 2.0.0-beta6

Production build 0.71.5 2024