{"id":546,"date":"2025-06-10T16:48:59","date_gmt":"2025-06-10T23:48:59","guid":{"rendered":"https:\/\/idwerkz.com\/blog\/?p=546"},"modified":"2025-07-15T13:09:59","modified_gmt":"2025-07-15T20:09:59","slug":"guest-access-to-moodle-courses","status":"publish","type":"post","link":"https:\/\/idwerkz.com\/blog\/how-to\/guest-access-to-moodle-courses\/","title":{"rendered":"Guest Access to Moodle Courses"},"content":{"rendered":"<p>I recently fixed an issue with my Moodle instance: <a href=\"https:\/\/idwerkz.com\/learn\/\">https:\/\/idwerkz.com\/learn\/<\/a>.<\/p>\n<p>For one specific course, I had enabled Guest access, but I wanted to change the settings. At one time I had required a password, and now I wanted there to be no password required.<\/p>\n<p>However, for some reason I could not erase the password &#8211; and worse, it conflicted with the improved password requirements I was using for the site.<\/p>\n<p>The end result was a paragraph of red text listing error complaints and warnings regarding password policy violations, whenever a guest user accessed the course.<\/p>\n<p>It wasn\u2019t a critical issue that would stop someone from accessing the course, but it was a source of potential confusion for users visiting my site.<\/p>\n<p>This is contrary to the desired user experience, and a bit of an embarrassment.<\/p>\n<p>I am happy to have since resolved the issue, it turns out there was a corrupted course, and I was able to set things right by copying the course.<\/p>\n<p>Now I can share with you what I learned in the process, with the following simple steps of how to manage guest access to Moodle courses.<\/p>\n<p>Also, full disclosure: this is for a limited audience of people who are managing, or thinking about managing, a Moodle instance.<\/p>\n<h2>Moodle Guest Password Policies<\/h2>\n<p>There are settings for Guest access both at the global system level and within each course itself.<\/p>\n<p>First things first: establish the norms for your Moodle instance at a site-wide level, and them move on to the individual course settings.<\/p>\n<ul>\n<li>Navigate to Site administration\\Security\\Site security settings.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/Site-security-settings.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-547\" src=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/Site-security-settings.png\" alt=\"Moodle Site Security Settings\" width=\"893\" height=\"617\" srcset=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/Site-security-settings.png 893w, https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/Site-security-settings-300x207.png 300w, https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/Site-security-settings-768x531.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<h3>Recommended Configuration:<\/h3>\n<ul>\n<li>Enable Password policy<\/li>\n<li>Minimum password length: Recommended 8+ characters<\/li>\n<li>Require digits, uppercase, lowercase, and non-alphanumerics as needed.<\/li>\n<li>Enable password expiration if required<\/li>\n<li>Configure lockouts after failed logins (under Account lockout settings).<\/li>\n<\/ul>\n<h2>User Account Creation and Passwords<\/h2>\n<ul>\n<li>Navigate to: Site administration\\Plugins\\Authentication\\Manage authentication<\/li>\n<\/ul>\n<p><a href=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/manage-authentication.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-549\" src=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/manage-authentication.png\" alt=\"manage authentications window \" width=\"582\" height=\"234\" srcset=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/manage-authentication.png 582w, https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/manage-authentication-300x121.png 300w\" sizes=\"auto, (max-width: 582px) 100vw, 582px\" \/><\/a><\/p>\n<ul>\n<li>Enable email-based self-registration (if needed)<\/li>\n<li>Set new user default role<\/li>\n<li>Force password change for pre-created accounts.<\/li>\n<\/ul>\n<h2>Guest Access to Courses<\/h2>\n<ul>\n<li>Enable Guest access globally:<\/li>\n<li>Navigate to Site administration\\Plugins\\Enrollments\\Guest access.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guest-access-global.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-548\" src=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guest-access-global.png\" alt=\"Guest access global settings\" width=\"702\" height=\"240\" srcset=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guest-access-global.png 702w, https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guest-access-global-300x103.png 300w\" sizes=\"auto, (max-width: 702px) 100vw, 702px\" \/><\/a><\/p>\n<ul>\n<li>Enable Guest Access for a course:<\/li>\n<li>Navigate to: Course\\Participants\\Enrollment methods\\Add method\\Guest access<\/li>\n<\/ul>\n<p><a href=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guestAccessSettingsInCourse.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-550\" src=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guestAccessSettingsInCourse.png\" alt=\"guest access settings in Course Settings\" width=\"894\" height=\"413\" srcset=\"https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guestAccessSettingsInCourse.png 894w, https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guestAccessSettingsInCourse-300x139.png 300w, https:\/\/idwerkz.com\/blog\/wp-content\/uploads\/2025\/06\/guestAccessSettingsInCourse-768x355.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<ul>\n<li>Allow guest access: Yes<\/li>\n<li>Set a guest password (optional)<\/li>\n<li>TIP: Leave password blank to allow public access.<\/li>\n<\/ul>\n<h2>Best Practices<\/h2>\n<p>Consistent design patterns and management of user policies are a curricular level concern that needs to be communicated and maintained through policy, and ongoing faculty professional development efforts, in combination with IT training and support assignments.<\/p>\n<p>Depending on what you are using Moodle for, you might want to have a variety of resources that are freely available, as well as others that are password protected.<\/p>\n<p>Here are some tips to keep in mind:<\/p>\n<ul>\n<li>Test guest access using an incognito or logged-out browser<\/li>\n<li>Use course visibility settings to hide sensitive courses<\/li>\n<li>Regularly audit accounts and login attempts (under Reports).<\/li>\n<\/ul>\n<p>Let me know if this is helpful, and good luck!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I recently fixed an issue with my Moodle instance: https:\/\/idwerkz.com\/learn\/. For one specific course, I had enabled Guest access, but I wanted to change the settings. At one time I had required a password, and now I wanted there to be no password required. However, for some reason I could not erase the password &#8211; &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/idwerkz.com\/blog\/how-to\/guest-access-to-moodle-courses\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Guest Access to Moodle Courses&#8221;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":573,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[40,109],"tags":[88,90],"class_list":["post-546","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-how-to","category-moodle","tag-lms","tag-moodle"],"_links":{"self":[{"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/posts\/546","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/comments?post=546"}],"version-history":[{"count":4,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/posts\/546\/revisions"}],"predecessor-version":[{"id":574,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/posts\/546\/revisions\/574"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/media\/573"}],"wp:attachment":[{"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/media?parent=546"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/categories?post=546"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/idwerkz.com\/blog\/wp-json\/wp\/v2\/tags?post=546"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}