Bulk update allocation credentials
Resource credentials can be set on either the Resource or the Allocation. When generating access URLs, credentials from the Allocation are preferred.
In many cases, Resources use {VAR:xxxx}
to pull values dynamically or from other fields. The following variable are supported for interpolation when generating access URLs:
-
timestamp
- UNIX timestamp of the present moment -
instcode
- inst code of the from the allocation -
uc_instcode
- inst code of the allocation, uppercase'd -
url_instname
- institution name -
url_dbsuid
- user_id from either the allocation itself, or the resource -
url_dbspwd
- password from wither the allocation itself, or the resource
These variables can themselves pull other variables, which will be successfully resolved and interpolated, e.g.,: the value of url_dbsuid
can be instcode
.
This allows for powerful, dynamic configuration of URL templates, but comes at the cost of significant fragility to the link generation process, which as a result is subject to errors resulting from empty referenced fields, typos, etc. Unfortunately, importing the legacy data required this syntax to continue to be supported, lest significant data remediation or additional development time be required.
A common use case is that a vendor will change the required credentials for a particular resource. In GALILEO Admin, Allocations can be edited in the UI and credentials can be set there. But doing this for a large set of Institutions would be time-consuming
Within the Vendor area, we should add a form that enables an admin user to update the credentials for a specified set of Allocations related to the Vendor.
The form, loaded for a given vendor's page (e.g., EBSCO) will allow the user to select:
- All or a subset of all Resources for that Vendor
- All or a subset of Institutions that are configured to access
- A new user_id value
- A new password value
Upon submission, the relevant Allocations will be gathered, and the new credentials will be applied to them. These new values could be variables as described above, or static values. Neither Resource nor Institution records will be updated.
After submission, a page should be shown indicating the success or failure of the attempt to update each designated allocation (which could be in the tens of thousands, so care should be taken when rendering these results).