Smithsonian / Smithsonian/caas-aspace-scripts

[FEATURE] Automate Generating User Reports in ASpace for User Audits

Open
#37 1 comment 0 reactions 1 assignee View on GitHub

@crugas is already working on this.

Since Feb 25, 2025.

enhancement
Dominant language
Python
Stars
1
Forks
0
Avg merge
4d 5h
Merged PRs (30d)
1

Description

Is your feature request related to a problem? Please describe.
We need to run audits on users of ArchivesSpace once every 2 months. These audits require us to generate a list of all the users in ArchivesSpace and send them to every unit point of contact to get their feedback on any changes that need to be made (users to remove, edit, permissions changed). This process could be partially automated.

Describe the solution you'd like

  • Build a script that queries the ArchivesSpace Background Jobs API endpoint to generate a CSV file for the Users Group Report
  • Take the CSV file generated and copy the data into an Excel spreadsheet template
  • The Excel spreadsheet template would contain formulas within a "main" sheet, where data from the CSV would be populated.
  • Formulas would transfer the data to other repository-named sheets, with data for each repository being separated and conditionally formatted.
  • Each repository sheet would have the usernames, user groups (permissions), user info (like time listed in the Additional Contact Info field), and check-boxes for unit points of contacts to check for: Active, De-activate, Update Permissions.
  • An automatic email is sent to unit points of contact listing the spreadsheet and asking for feedback

Requirements:

  • Spreadsheet would need to live on a shared SharePoint page where unit points of contact can edit
  • Spreadsheet would need to be timestamped
  • The automatic email must be able to be canceled in case the spreadsheet generated has errors or needs re-generating

Describe alternatives you've considered

  • Implement a policy where users who haven't logged in in so many days have their accounts disabled. Not a fan of this since it would create a lot more "re-activate" account requests in ServiceNow.
  • Continue to use SQL query or run User Group report manually in ASpace and manually filter data to email to unit points of contact.

Additional context
Document the step-by-step process here: ASpace User Reports Process
More context on previous password report: Pass on the process of monthly ASpace User Account reports (SQL-based currently)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.