Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-73827

URL blocked during OBv2.1 user authentication

    XMLWordPrintable

Details

    • MOODLE_311_STABLE
    • MOODLE_311_STABLE
    • MDL-73827-311
    • MDL-73827-master
    • Hide

      Requirements

      1. Run your site with public access (use ngrok or similar).
      2. Run your site with HTTPS.
      3. One account set up on https://test.badgr.com/.

      Setup

      1. Login as admin.
      2. Go to "Site administration > Server > OAuth 2 services".
      3. Create a new "Open Badges" service with the following information:
        • Name: "Badgr"
        • Service base URL: https://api.test.badgr.com/
        • Logo URL: https://api.test.badgr.com/static/images/logo.png
          * There is an issue with the current Badgr manifest because the image URL is invalid. So, for now, it's better, as this is a development environment, we can avoid it using the previous "Logo URL" (instead of getting it from the manifest).
        • Leave Client ID and Client secret empty.
        • This service will be used: Internal services only
      4. In the Moodle site, go to "Site administration > Badges > Manage backpacks"
      5. Click the "Add a new backpack" with the following data: 
      6. Save changes.

      Testing scenario

      1. Go to the user "Preferences" page and then select "Backpack settings".
      2. Select "https://test.badgr.com/" as "Backpack provider".
      3. Click the button "Connect to backpack".
      4. You'll be redirected to the backpack site and the login form page will be displayed. Login using the test.badgr.com user account.
      5. Check the screen requesting your permission is displayed with the following application access permissions:
        • Know who you are on Badgr
        • Add badges into a User's Backpack
        • See who you are
      6. Click the button "Authorize".
      7. Check you're redirected to the Moodle page and the following notification is displayed: "Backpack is connected". 
      Show
      Requirements Run your site with public access (use ngrok or similar). Run your site with HTTPS. One account set up on https://test.badgr.com/ . Setup Login as admin. Go to "Site administration > Server > OAuth 2 services". Create a new "Open Badges" service with the following information: Name: "Badgr" Service base URL:  https://api.test.badgr.com/ Logo URL:  https://api.test.badgr.com/static/images/logo.png * There is an issue with the current Badgr manifest because the image URL is invalid. So, for now, it's better, as this is a development environment, we can avoid it using the previous "Logo URL" (instead of getting it from the manifest). Leave Client ID and Client secret empty. This service will be used: Internal services only In the Moodle site, go to "Site administration > Badges > Manage backpacks" Click the "Add a new backpack" with the following data:  Backpack API URL:  https://api.test.badgr.com/   Backpack URL:  https://test.badgr.com/   API version supported: Open Badges v2.1 OAuth2 services: Badgr Save changes. Testing scenario Go to the user "Preferences" page and then select "Backpack settings". Select "https://test.badgr.com/" as "Backpack provider". Click the button "Connect to backpack". You'll be redirected to the backpack site and the login form page will be displayed. Login using the test.badgr.com user account. Check  the screen requesting your permission is displayed with the following application access permissions: Know who you are on Badgr Add badges into a User's Backpack See who you are Click the button "Authorize". Check  you're redirected to the Moodle page and the following notification is displayed: "Backpack is connected". 
    • Moppies Kanban

    Description

      I've faced this issue while running the certification process for Moodle 4.0 (but I've been able to reproduce it in 3.11 too).

      Requirements

      1. Run your site with public access (use ngrok or similar).

      Setup

      1. Login as admin.
      2. Go to "Site administration > Server > OAuth 2 services" and create a new "Open Badges" service with the following information:
      3. In the Moodle site, go to "Site administration > Badges > Manage backpacks" and "Add a new backpack" with the following data:

      Steps to reproduce

      1. Go to the user "Preferences" page and then select "Backpack settings".
      2. Select "https://certification.imsglobal.org/badgeconnect" as "Backpack provider".
      3. Click the button "Connect to backpack".
      4. Login using "badgeuser1" / "user1rocks".
      5. Check the screen requesting your permission is displayed with the following application access permissions:
        • Get Open Badges Profile
        • Create Open Badges Assertion
        • Get Open Badges Assertions
        • Offline Access
      6. Click the button "Yes, Allow".

      Expected behaviour

      The backpack is connected

       

      Current behaviour

      The following error is displayed: "Exception - Argument 1 to core\auth2\client::map_userifno_to_fields() must be an instance of stdClass, null given, called in [dirroot]/dir/classes/oauth2/client.php on line 504". It's due because the response when the userinfo endpoint is called is "The URL is blocked.".

      Attachments

        Issue Links

          Activity

            People

              sarjona Sara Arjona (@sarjona)
              sarjona Sara Arjona (@sarjona)
              Ferran Recio Ferran Recio
              Jun Pataleta Jun Pataleta
              Gladys Basiana Gladys Basiana
              Yuliya Bozhko, Amaia Anabitarte, Carlos Escobedo, Ferran Recio, Ilya Tregubov, Laurent David, Raquel Ortega, Sara Arjona (@sarjona), Amaia Anabitarte, Carlos Escobedo, Ferran Recio, Ilya Tregubov, Laurent David, Raquel Ortega, Sara Arjona (@sarjona)
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                14/Mar/22

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 7 hours
                  7h