Skip to content

NEMAR User Roles and Responsibilities

Version: 1.0.0 Date: 2026-01-18

NEMAR system uses dedicated service accounts for different operational tasks:

AccountEmailRoleResponsibilities
Owner[email protected]Super UserSystem ownership, full access, policy decisions
nemarAdmin[email protected]AdministratorUser approval, dataset creation, routine admin
nemarRestore[email protected]Restore AgentDataset restoration, git commits for recovered data

Purpose: Ultimate system authority and oversight

Responsibilities:

  • System ownership and governance
  • Policy and architectural decisions
  • Super-user access to all systems
  • Emergency interventions
  • Delegation of administrative tasks

Access:

  • Full access to all GitHub organizations
  • AWS root/admin credentials
  • Cloudflare admin access
  • All database permissions

Notes:

  • Retains ownership but delegates routine operations to nemarAdmin
  • Involved in critical decisions and emergencies
  • Not used for day-to-day operations

Purpose: Day-to-day administrative operations

Responsibilities:

  • Approve new user registrations
  • Create dataset repositories
  • Manage user permissions
  • Create concept DOIs for datasets
  • Handle routine administrative tasks
  • Monitor system health

Access:

  • Admin role in backend database
  • GitHub organization admin (nemarDatasets)
  • Dataset creation permissions
  • User management interface
  • Zenodo DOI creation

Typical Operations:

Terminal window
# Approve pending user
nemar admin approve <username>
# Create concept DOI
nemar admin doi create <dataset_id>
# List pending users
nemar admin users --pending
# Revoke user access
nemar admin revoke <username>

Notes:

  • Primary contact for user support
  • Handles dataset lifecycle management
  • Does NOT have super-user/owner privileges
  • Escalates to Owner for policy decisions

Purpose: Automated dataset restoration and recovery operations

Responsibilities:

  • Restore datasets from Zenodo archives
  • Recreate GitHub repositories after deletion
  • Git commit attribution for restored datasets
  • Documentation of restoration process
  • Verification of restored data integrity

Access:

  • Git commit identity
  • GitHub push access (via scripts)
  • AWS read access to S3 (for verification)
  • No interactive login (service account)

Usage: This account is used only for git commit identity during restoration:

Terminal window
# Git configuration in restoration scripts
git config user.name "NEMAR Restore"
git config user.email "[email protected]"
# Commits appear as:
Author: NEMAR Restore <[email protected]>
Date: Sat Jan 18 18:30:00 2026 +0000
Restore nm000105 from Zenodo archive
...
Restored by: NEMAR Restore

Notes:

  • Service account, not for human login
  • Used exclusively for restoration commits
  • Provides clear audit trail for recovered datasets
  • Commits are signed “Restored by: NEMAR Restore”

  1. User submits registration via CLI
  2. Email verification sent
  3. nemarAdmin receives notification
  4. nemarAdmin reviews and approves
  5. System generates credentials
  6. User receives approval email
  1. User validates BIDS dataset locally
  2. User runs nemar dataset upload
  3. System creates GitHub repo
  4. System uploads to S3
  5. nemarAdmin creates concept DOI
  6. Dataset published
  1. Dataset accidentally deleted
  2. Owner or nemarAdmin identifies need
  3. Run restoration script (uses nemarRestore identity)
  4. Script commits as “NEMAR Restore [email protected]
  5. Verification performed
  6. Database entries restored by nemarAdmin

  • nemarAdmin: Can manage users and datasets, cannot modify system architecture
  • nemarRestore: Can only commit to git, no database or user management access
  • Owner: Retains full access but delegates routine operations
Owner (yahya)
├── Full system access
├── Policy decisions
└── Emergency interventions
nemarAdmin
├── User management
├── Dataset management
└── DOI creation
nemarRestore (Service Account)
└── Git commit identity only

All operations are logged with appropriate attribution:

  • User approvals → Logged to nemarAdmin
  • Dataset restorations → Git commits by NEMAR Restore
  • System changes → Logged to Owner
  • API usage → Logged per user’s API token

Planned enhancement to dataset deletion:

Tier 1: nemarAdmin

  • Can delete datasets they created
  • Cannot delete owner-created datasets
  • Requires confirmation for deletions

Tier 2: Owner

  • Can delete any dataset
  • Requires double confirmation
  • Logged with full audit trail

Future automation could:

  • Detect accidental deletions
  • Trigger restoration automatically
  • Notify nemarAdmin of recovery
  • Update database entries

For Administrative Questions:

For System/Policy Questions:

For Technical Documentation:

  • See: NEMAR_RESTORATION_GUIDE.md
  • See: Repository AGENTS.md files (CLAUDE.md is a thin adapter that imports AGENTS.md)


Maintained by: NEMAR Development Team Last Updated: 2026-01-18