Can guest user able to run quiz in moodle - moodle

i have quiz open for guests ,given permissions to view , preview an attempt the quiz but still guest use can't able to run the test .then why the permissions are mentioned for the guest at quiz level.

No. The quiz module explicitly checks to make sure the user is logged in.

If you have rights, you can override the permission for the guest role to allow attempts.
Turn on editing,
edit the quiz,
click on the override tab,
choose the guest role
find the properties specifically to override which is probably "Allow".
Save your changes
Login as guest and check the quiz

When you want reports, etc from "guest" users, then the simple solution:
Make a 'test' user (student role) with 'test' password.
Then make a login-block on the FrontPage, with filled out inputs (username:test, password:test) and a little instruction for guest-users to login with this account.

Related

Firebase: Standard User Registration/Activation Workflow

I need to implement a standard user registration/activation workflow with Firebase. There doesn't seem to be an obvious way to implement this. When I say "standard", I mean how most email/password accounts work - not necessarily specific to Firebase. I'm sure you're familiar with this. This is the workflow:
User enters their username/password on a form with some validation and submits details
The back-end creates the user record in the database, but the account remains deactivated (i.e. user cannot authenticate - the activated flag is set to false)
The back-end sends an email to the user with a link to activate the account
The user clicks the link in their email which triggers activation. This is probably a Web API of some description.
At this point, the user record's activated flag ticks over to true, and the user can now authenticate
The link probably also has a deep link that opens the app or navigates to a web page
The user can now log into the app
How do I configure Firebase to do all this?
Currently, the app allows the user to register. I am using the Flutterfire SDK. I call createUserWithEmailAndPassword, which successfully creates the user in Firebase. But, the user is already activated. The user should have a state of "disabled" in firebase until the account becomes activated. I can't find any settings to default the user to disabled when the account is first created.
I also managed to get Firebase to send out an activation email by calling sendSignInLinkToEmail, but this call is really designed for email authentication - not email activation. Opening the link should activate the account, but I have not figured out how to do this. This documentation makes it sound like it is possible. Perhaps, the Flutterfire SDK is missing this? I don't want to allow people to log in without a password. I only want to use this call to send out an email.
What am I missing here? Is this non-standard behavior for Firebase? If so, why? If the user is allowed to use an app with an email address that is not activated, they can impersonate someone else. We need to confirm at least that they are custodians of the email address that they are claiming to have.
Do other Firebase people just not worry about this?
Lastly, I know I can achieve this by creating a collection for users in Firebase and putting an "activated" flag there. But, if I do that, I've got to write a cloud function that accepts the link and then updates the user in the collection based on the received link. But I thought this would be automatic in Firebase. If Firebase doesn't have this built-in, I have to put all the security over the top to stop users from authenticating when they have not yet activated their account.
This is a pretty valid concern. I suppose the way around this is to check whether the signed-in user is verified whenever the app is launched. The User object that is returned from Firebase Auth has an emailVerified flag. Check this page for more details.
Using this flag you can choose to show a different screen or pop-up that has a button to send a verification link to the registered email address. Until the user verifies this address, you can limit access to some of the app's screens if you want.
Please note that I have not checked if this emailVerified flag is true for sign ups using Federated login providers like Google Sign-in and Apple Sign In. You might want to check that out.

Moodle: open course with a link

Is there a feature in moodle that allows users (users that have an access, not guest) to enter the course with a link shared by admin?
What I want is that when a user clicks on that link, a login page appears, after logging in, the user is automatically enrolled in that course.
Moodle version: 3.6.2
Without the need of coding, you could enable the self-enrol enrolment method at course level with enrolment key (defaulting to student role), then provide the link to the course to the existing user you wish he/she self-enrolls as student.
The user, once logged in and trying to access the course, will be presented with a form requesting the enrolment key, once the correct key is provided he/she will be self-enrolled as student.
If you want something more direct, like a token based kind of direct authentication+enrol you will need to use an existing plugin (like this one https://moodle.org/plugins/auth_enrolkey) or write your own.

Using One-Time-Password in moodle

I am using moodle 2.x for some testing courses.
I'd like to use one-time-password for moodle login.
That means when users login with certain password, then they can take exams in that session.
However if they close the window or login their account, they can't login again anymore. And if they want to continue to take another exam, the teacher or administrator will help them by provide another password or something like that help them to login again.
Thanks all,
Noat
Either you will have to write a new auth plugin or you can use
prelogout_hook()
https://docs.moodle.org/dev/Authentication_plugins#pre_loginpage_hook.28.29
to suspend the use account

How to reassign "legal" permission in iTunesConnect

On our first iOS app, the person who started up our account with Apple assigned the "legal" permission to our shared support mail, and as such, the "legal" permission was assigned to that Apple ID. Even though the CEO filled in all the paperwork there, having access to that mail as well, "legal" should not have been assigned to that AppleID.
We need to now move that permission from the shared support mail over to our CEO's own company mail, but I can't seem to move that permission over, even while logged in as the current "legal" user. The check box for "legal" seems to be unclickable.
Is there any way to CHANGE the AppleID that is assigned to "legal?"
See instructions for Transferring the Team Agent Role (legal role) on this page:
https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/ManagingYourTeam/ManagingYourTeam.html
In a nutshell (from the page above):
Sign in to developer.apple.com/account as the team agent, and click
Membership.
Scroll down to Settings, and click Transfer Team Agent Role.
Follow the instructions that appear in a series of dialogs.
For example, you will be asked to choose a new team agent and sign an
Agent Transferor Agreement.
The legal role can only be reassigned by contacting the developer support
https://developer.apple.com/contact/submit/
If I understand correctly and you would like to sign the legal role to another person, you have o do that under the User and Roles Tab in iTunes Connect. To change the user's roles you need to have the admin account. If you want to change the Apple ID that is used to sign all the contacts, that is unfortunately not possible. This is in most cases the initial email with which the account was initially created. This unfortunately will have to stay the same unless you convert from a private to a company account. Hope that helps.

Sitecore - Is there a way to clone/duplicate a user in the User Manager?

I have an account setup exactly the way I'd like a number of individuals accounts setup and I'd like to create them as clones of this account so the get the initial set of permissions without me having to manually set all the permission on each account.
Note: It is fine (ideal?) if once the accounts are created that they no longer have a relationship with the original account. For instance, if User A is the base account that is being used to create all the other accounts, once User B is made from User A then all further changes on User A will not be reflected on User B.
Any ideas?
In answer to your question: no, there is no clone/copy user feature in the User Editor in Sitecore.
It sounds like you would be better off creating a role with all these permissions, then assigning this role to any new users you create. You could then modify the permissions of the individual users as necessary.
Note this would not be the ideal solution as it's always better to apply security to roles rather than individual users.
Perhaps you could achieve what you need by creating a collection of roles and assigning different combinations of them to each user?
Try installing this Sitecore Module.This will clone the user in User Manager
SITECORE USER CLONE
Sitecore User Clone is used to create the copy of the user with the same roles, name, email, and profile. It will prompt to accept the new username, password and all the editable fields same like Edit user.