mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #66926
[Bug 1947528] A change has been merged
Reviewed: https://reviews.mahara.org/c/mahara/+/12366
Committed: https://git.mahara.org/mahara/mahara/commit/cd5f7451e8fc38f482ac0a1f8e979294ec21f3f7
Submitter: "Robert Lyon <robertl@xxxxxxxxxxxxxxx>"
Branch: main
commit cd5f7451e8fc38f482ac0a1f8e979294ec21f3f7
Author: Dianne Tennent <dianne.tennent@xxxxxxxxxxxxxxx>
Date: Thu Jan 20 17:46:05 2022 +1300
Bug 1947528: Prevent deleting external apps when in use
Enter unique value in instancename field in auth_instance table that
matches the application_title in oauth_server_registry table so
that institutions can differentiate between different external
webservice apps that are being used for authentication.
This allows us to prevent deleting an external webservices app if
it is still being used by someone as their authentication method.
Update Behat test steps for adding auth method to institution
settings.
Change-Id: Id91fd8e0b5c97bd1abc28b3e425fcf5dadb7032a
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: mahara-contributors
https://bugs.launchpad.net/bugs/1947528
Title:
You can delete external apps even when some people are using it as
auth method
Status in Mahara:
Fix Committed
Bug description:
When you set up an external app, e.g. LTI or LTI Advantage, you can
delete it from Admin menu -> Web services -> External apps even when
some people are still associated with it as authentication method,
essentially rendering their accounts unusable. Normally, when an
authentication method is still in use, you cannot remove it for an
institution.
There are a few things that would require clean-up and improvement:
1. Bug #1947533 should be fixed first.
2. If a person still uses that authentication method then the external
app should not display a 'Delete' button for that external app so that
it can't be deleted accidentally.
3. Actually tie an external app to a particular 'webservice'
authentication. Right now, when you select 'webservice' as
authentication method in an institution, you can't configure it, and
it checks whether web services are available in the institution and
then allow those in. It does not check though if, for example, it
should be LTI or LTI Advantage with which an account is set up.
Therefore, what should happen is the following:
a) Site admin sets up an LTI external app for institution A and calls it 'LMS' and sets up a second one for LTI advantage called 'University'.
b) Site admin selects 'webservices' (rename to 'External app) as auth method in the institution settings for institution A and sees a drop-down menu with all available external apps, in this case 'LMS' and 'University' and selects one of them. The display in the settings page reads 'External app: LMS' (or 'External app: University').
c) When a student logs in via the LMS external app, their account is associated with that external authentication method.
d) On the 'External apps' page, 'LMS' doesn't have a 'Delete' icon because an account is associated with it and uses that app to log in.
We will need to think about how to deal with that in an upgrade
because at the moment, an institution could have two LTI external apps
configured and in the auth instance table there would be only one
'webservices' option, not differentiating between the different apps.
To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1947528/+subscriptions
References