Healthcare RBAC Guide#
This guide explains the role-based access control (RBAC) system for SeqsLab’s Healthcare module, which manages genetic test samples through their complete lifecycle—from patient registration to final clinical report sign-off.
Overview#
What is Healthcare RBAC?#
Healthcare RBAC in SeqsLab implements a state-based permission model specifically designed for clinical genetic testing workflows. Unlike general RBAC where permissions are static, healthcare permissions change dynamically based on where a sample is in its lifecycle.
This ensures:
Regulatory Compliance: Meets CLIA/CAP requirements for clinical laboratory workflows
Quality Control: Enforces proper review and approval gates
Separation of Duties: Different roles handle different workflow stages
Audit Trail: Complete tracking of who did what at each stage
The Sample Lifecycle#
Every genetic test sample moves through a defined lifecycle with four main stages:
┌─────────┐ ┌──────────┐ ┌────────┐ ┌────────┐
│ PENDING │───►│ ANALYSIS │───►│ REVIEW │───►│ REPORT │───►✅ CLOSED
└─────────┘ └──────────┘ └────────┘ └────────┘
│ │ │ │
└──────────────┴──────────────┴──────────────┘
Data Entry Wet/Dry Lab QC Review Sign-off
Additional States:
CLOSED: Report signed out (final state)
REJECTED: Sample stopped due to quality issues (can be rolled back)
Important
Permissions are state-dependent: what you can do with a sample depends on its current lifecycle stage.
Healthcare Roles#
SeqsLab Healthcare defines five specialized roles, each responsible for specific stages of the sample lifecycle.
Role Summary Table#
Role |
Primary Stage |
Key Responsibility |
Can Create Reports? |
|---|---|---|---|
ReporterDataEntryOperator |
PENDING |
Enter patient and sample data |
❌ No |
MedicalTechnologist |
PENDING → ANALYSIS → REVIEW |
Manage wet-lab operations and data uploads |
❌ No |
BioinformaticsScientist |
ANALYSIS → REVIEW |
Run analysis pipelines and create interpretations |
❌ No |
LaboratorySupervisor |
REVIEW → REPORT |
Approve reviews and create reports |
✅ Yes |
MedicalDirector |
REPORT → CLOSED |
Sign out or reject final reports |
❌ No (only edits) |
Role Details#
1. ReporterDataEntryOperator#
Who: Clinical data entry staff, receptionists, intake coordinators
Primary Function: Create patient records and register incoming samples
What You Can Do#
✅ Always Allowed:
Create new patient records (
Individual)Create new genetic test orders (
Phenopacket)Create new sample records (
Biosample)Enter patient measurements and phenotypic features
View all samples and patient data
🔶 Conditionally Allowed:
Update samples: Only when sample is in
PENDINGstateUpdate patient records: Only when all linked samples are in
PENDINGstateDelete samples: Only when sample is in
PENDINGstate
❌ Not Allowed:
Upload dataset files
Run analysis pipelines
Create or view clinical reports
Modify samples in ANALYSIS, REVIEW, or REPORT stages
Typical Workflow#
Patient arrives for genetic testing
You create an
Individualrecord with patient demographicsYou create a
Phenopacket(test order) linking to the patientYou create a
Biosamplerecord for the physical sampleSample starts in
PENDINGstate awaiting data uploadYour work is complete — sample moves to MedicalTechnologist
Tip
If you need to correct patient information after data upload has started, contact your LaboratorySupervisor or MedicalTechnologist.
2. MedicalTechnologist#
Who: Lab technicians, medical technologists, wet-lab operators
Primary Function: Manage wet-lab operations, upload sequencing data, curate variant selections during review
Inherits From: DataAdministrator (includes full data hub and dataset management)
What You Can Do#
✅ Always Allowed:
Create, update, and delete samples (
Biosample)Create, update, and delete patient records (
Phenopacket)Upload and manage dataset files (FASTQ, BAM, VCF)
Manage all data hub objects (DRS)
Create and edit measurements and phenotypic features
View all samples and interpretations
Curate review data: Select reportable variants, choose gene panels, add clinical comments
❌ Not Allowed:
Run bioinformatics pipelines (requires BioinformaticsScientist)
Create or update clinical reports
Approve samples for reporting (requires LaboratorySupervisor)
Sign out final reports (requires MedicalDirector)
Typical Workflow#
Stage 1: PENDING → ANALYSIS
Receive sample in
PENDINGstateUpload sequencing data files (FASTQ)
Link files to the biosample
Transition sample to
ANALYSISstate
Stage 2: ANALYSIS (Wet-lab operations)
Monitor sample processing
Upload additional QC data as needed
Wait for BioinformaticsScientist to run pipelines
Stage 3: REVIEW (Variant curation)
Review pipeline results
Select reportable variants
Choose appropriate gene panels
Add clinical comments and annotations
Prepare sample for LaboratorySupervisor approval
Rollback Authority:
Can roll back samples from
REVIEW→ANALYSISorANALYSIS→PENDINGif reprocessing is needed
Note
MedicalTechnologist is the primary editor during the REVIEW stage, preparing the test review for supervisor approval.
3. BioinformaticsScientist#
Who: Bioinformatics engineers, computational scientists, pipeline developers
Primary Function: Execute dry-lab analysis pipelines that generate variant interpretations
Inherits From: DataHubWriter, DatasetViewer, DatasetWriter, JobExecutor, ToolUser
What You Can Do#
✅ Always Allowed:
Submit and monitor workflow runs (WES)
Create and manage analysis tools (TRS)
Upload and manage datasets
View all samples and patient data
Create
Interpretation,Diagnosis,GenomicInterpretation, andPolygenicInterpretationrecordsManage Reporter settings
🔶 Conditionally Allowed:
Update interpretations: Only when linked sample is in
PENDINGorANALYSISstateUpdate samples: Only when sample is in
PENDINGorANALYSISstate
❌ Not Allowed:
Create or update clinical reports
Approve samples for reporting
Sign out final reports
Modify data once sample reaches
REVIEWstage (requires MedicalTechnologist or LaboratorySupervisor)
Typical Workflow#
Receive sample in
ANALYSISstate (data uploaded by MedicalTechnologist)Create bioinformatics workflow (e.g., variant calling pipeline)
Submit workflow run via WES
Monitor pipeline execution
Pipeline automatically creates:
Interpretationrecords (overall assessment)Diagnosisrecords (disease context)GenomicInterpretationrecords (variant-level findings with ACMG classifications)PolygenicInterpretationrecords (polygenic risk scores)
Transition sample to
REVIEWstate upon completionYour work is complete — sample moves to MedicalTechnologist for curation
Important
Once a sample reaches REVIEW stage, you can no longer modify interpretations. This ensures data integrity during the review process.
4. LaboratorySupervisor#
Who: Lab supervisors, senior scientists, quality control managers
Primary Function: Review curated test data and approve samples for reporting by creating the official PhenopacketReport
Inherits From: DatasetViewer, DataHubViewer
What You Can Do#
✅ Always Allowed:
View all samples, patient data, and interpretations
View all dataset files
Create
PhenopacketReportrecords (⭐ Only role with this permission)
🔶 Conditionally Allowed:
Update samples: Only when sample is in
REVIEWstateDelete samples/patient records: Only when sample is in
CLOSEDstate (for archival cleanup)
❌ Not Allowed:
Upload dataset files
Run analysis pipelines
Modify interpretations
Sign out final reports (requires MedicalDirector)
Typical Workflow#
Receive sample in
REVIEWstate (curated by MedicalTechnologist)Review the test review:
Verify selected variants are appropriate
Check gene panel selections
Review clinical comments
Ensure data quality meets standards
If approved:
Create a
PhenopacketReport(snapshot of current data)Transition sample to
REPORTstate
If not approved:
Roll back to
ANALYSISorPENDINGfor reprocessingCommunicate issues to MedicalTechnologist
Tip
You act as the quality gatekeeper between REVIEW and REPORT stages. Only create a report when you’re confident the data meets clinical standards.
5. MedicalDirector#
Who: Clinical medical directors, pathologists, attending physicians
Primary Function: Final review and sign-off of clinical reports
Inherits From: DatasetViewer, DataHubViewer
What You Can Do#
✅ Always Allowed:
View all clinical reports (
PhenopacketReport)Update clinical reports (edit before sign-off)
Delete clinical reports (reject back to REVIEW)
List all samples and reports
🔶 Conditionally Allowed:
Update samples: Only when sample is in
REPORTstate (to perform sign-out or rejection)Delete interpretations: Only when linked sample is in
REPORTstate
❌ Not Allowed:
Create new reports (requires LaboratorySupervisor)
View or modify samples in PENDING, ANALYSIS, or REVIEW stages
Upload data or run pipelines
Typical Workflow#
Receive sample in
REPORTstate (report created by LaboratorySupervisor)Review the
PhenopacketReport:Verify clinical interpretation accuracy
Check variant pathogenicity classifications
Review clinical recommendations
Ensure report meets diagnostic standards
Decision point:
Sign out: Update report status to
FINAL, transition sample toCLOSED✅Reject: Delete report, transition sample back to
REVIEWfor corrections ❌
Post-Sign-Out:
If corrections needed after sign-out, LaboratorySupervisor can reissue (
CLOSED→REPORT)You can then create an amended report
Important
You are the final authority on clinical report accuracy. Only sign out reports that meet diagnostic quality standards.
Permission Tables by Data Model#
Biosample (Sample Records)#
The central entity tracking sample lifecycle state.
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
✅ |
✅ |
❌ |
❌ |
❌ |
View |
✅ |
✅ |
✅ |
✅ |
❌ |
List |
✅ |
✅ |
✅ |
✅ |
✅ |
Update |
🔶 PENDING only |
✅ |
🔶 PENDING/ANALYSIS |
🔶 REVIEW only |
🔶 REPORT only |
Delete |
🔶 PENDING only |
❌ |
❌ |
🔶 CLOSED only |
❌ |
Phenopacket (Patient Test Orders)#
Links patient to samples and clinical context.
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
✅ |
✅ |
❌ |
❌ |
❌ |
View |
✅ |
✅ |
✅ |
✅ |
❌ |
List |
✅ |
✅ |
✅ |
✅ |
❌ |
Update |
🔶 All samples PENDING |
✅ |
🔶 PENDING/ANALYSIS |
❌ |
❌ |
Delete |
🔶 All samples PENDING |
❌ |
❌ |
🔶 Any sample CLOSED |
❌ |
PhenopacketReport (Clinical Reports)#
Official diagnostic report snapshot.
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
❌ |
❌ |
❌ |
✅ Only role |
❌ |
View |
❌ |
✅ |
✅ |
✅ |
✅ |
List |
❌ |
✅ |
✅ |
✅ |
✅ |
Update |
❌ |
❌ |
❌ |
❌ |
✅ Only role |
Delete |
❌ |
❌ |
❌ |
❌ |
✅ Only role |
Interpretation Models#
Includes Interpretation, Diagnosis, GenomicInterpretation, PolygenicInterpretation.
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
❌ |
✅ |
✅ |
✅ |
❌ |
View |
❌ |
✅ |
✅ |
✅ |
❌ |
List |
❌ |
✅ |
✅ |
✅ |
❌ |
Update |
❌ |
✅ |
🔶 PENDING/ANALYSIS |
✅ |
❌ |
Delete |
❌ |
✅ |
❌ |
✅ |
🔶 REPORT only |
Individual (Patient Demographics)#
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
✅ |
❌ |
✅ |
❌ |
❌ |
View |
✅ |
❌ |
✅ |
❌ |
❌ |
Update |
✅ |
✅ |
✅ |
❌ |
❌ |
Delete |
❌ |
❌ |
❌ |
❌ |
❌ |
Measurement & PhenotypicFeature#
Clinical measurements and observed phenotypes.
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
✅ |
✅ |
✅ |
❌ |
❌ |
View |
✅ |
✅ |
✅ |
✅ |
❌ |
Update |
✅ |
✅ |
✅ |
❌ |
❌ |
Delete |
❌ |
✅ |
✅ |
❌ |
❌ |
File (Dataset Files)#
Sequencing data files (FASTQ, BAM, VCF).
Operation |
Data Entry |
Med Tech |
Bioinfo |
Lab Supervisor |
Med Director |
|---|---|---|---|---|---|
Create |
❌ |
❌ |
✅ |
❌ |
❌ |
View |
❌ |
✅ |
✅ |
✅ |
❌ |
List |
✅ |
✅ |
✅ |
✅ |
✅ |
Delete |
❌ |
✅ |
✅ |
❌ |
❌ |
Common Workflows#
Complete Sample Lifecycle#
Here’s how all five roles work together to process a genetic test sample:
1. Sample Registration (ReporterDataEntryOperator)
Patient arrives → Create Individual → Create Phenopacket → Create Biosample
State: PENDING
2. Data Upload (MedicalTechnologist)
Upload FASTQ files → Link to Biosample → Transition to ANALYSIS
State: PENDING → ANALYSIS
3. Pipeline Execution (BioinformaticsScientist)
Submit WES workflow → Pipeline runs → Creates Interpretations → Transition to REVIEW
State: ANALYSIS → REVIEW
4. Variant Curation (MedicalTechnologist)
Review variants → Select reportable variants → Choose panels → Add comments
State: REVIEW (editing)
5. Quality Control (LaboratorySupervisor)
Review curated data → Approve → Create PhenopacketReport → Transition to REPORT
State: REVIEW → REPORT
6. Clinical Sign-Off (MedicalDirector)
Review report → Sign out → Transition to CLOSED
State: REPORT → CLOSED ✅
Rollback Scenarios#
Sometimes samples need to go backward in the workflow:
Scenario 1: Poor Data Quality
Who: MedicalTechnologist
Action: Roll back from
REVIEW→ANALYSISorANALYSIS→PENDINGReason: Need to reprocess sample or upload new data
Scenario 2: Report Corrections Needed
Who: MedicalDirector
Action: Delete report, sample returns to
REVIEWReason: Clinical interpretation needs revision
Scenario 3: Post-Sign-Out Amendment
Who: LaboratorySupervisor
Action: Reissue from
CLOSED→REPORTReason: Need to issue amended report with corrections
Troubleshooting#
“Permission Denied” on Sample Update#
Error: 403 Forbidden when trying to update a biosample
Check:
What is the sample’s current state?
ReporterDataEntryOperator: Only
PENDINGBioinformaticsScientist: Only
PENDINGorANALYSISLaboratorySupervisor: Only
REVIEWMedicalDirector: Only
REPORT
Are you trying to change the state?
If updating
statefield, ensure you have authority for that transitionReporterDataEntryOperator cannot change state from
PENDING
Solution: Contact the role responsible for the current stage, or wait for sample to reach your stage.
Cannot Create Report#
Error: 403 Forbidden when creating PhenopacketReport
Reason: Only LaboratorySupervisor can create reports.
Solution: If you need a report created, contact your LaboratorySupervisor.
Cannot View Sample#
Error: 403 Forbidden or 404 Not Found when viewing biosample
Possible Causes:
MedicalDirector: You can only view samples in
REPORTorCLOSEDstateReporterDataEntryOperator: Cannot view reports (use Biosample view instead)
Organization mismatch: Sample belongs to different organization
Solution: Verify sample state and your role permissions. Contact administrator if you need broader access.
Cannot Delete Interpretation#
Error: 403 Forbidden when deleting genomic interpretation
Check:
BioinformaticsScientist: Cannot delete interpretations (only create/update)
MedicalDirector: Can only delete when sample is in
REPORTstateMedicalTechnologist/LaboratorySupervisor: Can delete at any time
Solution: Verify sample state or contact appropriate role.
Best Practices#
For All Healthcare Users#
Respect the Workflow: Don’t try to skip stages or bypass approvals
Document Changes: Add clear comments when modifying clinical data
Communicate: Coordinate with other roles when rolling back samples
Verify State: Always check sample state before attempting operations
Report Issues: Contact your supervisor if you encounter permission errors
For Data Entry Staff#
✅ Double-check patient demographics before moving to next stage
✅ Verify sample IDs match physical labels
✅ Complete all required fields before submission
❌ Don’t create duplicate patient records
For Lab Technicians#
✅ Upload complete dataset files before transitioning to ANALYSIS
✅ Document QC metrics and processing notes
✅ Coordinate with BioinformaticsScientist on pipeline requirements
❌ Don’t transition to REVIEW until pipeline completes
For Bioinformatics Scientists#
✅ Validate pipeline outputs before creating interpretations
✅ Use standardized ACMG classifications
✅ Document pipeline versions and parameters
❌ Don’t modify interpretations after REVIEW stage
For Lab Supervisors#
✅ Thoroughly review all curated data before creating reports
✅ Verify variant selections match clinical indications
✅ Ensure gene panels are appropriate
❌ Don’t create reports for incomplete reviews
For Medical Directors#
✅ Review reports against clinical guidelines
✅ Verify pathogenicity classifications
✅ Ensure recommendations are evidence-based
❌ Don’t sign out reports with unresolved questions
Compliance & Security#
Regulatory Compliance#
Healthcare RBAC is designed to meet:
CLIA/CAP: Clinical laboratory workflow requirements
Enforced review and approval gates
Separation of duties between roles
Complete audit trail
HIPAA: Protected health information access controls
Organization isolation
Role-based access restrictions
Comprehensive logging
GDPR: Patient data privacy
Controlled access to patient records
Data deletion capabilities (via LaboratorySupervisor)
Audit Trail#
Every action is logged with:
User ID and role
Timestamp
Action performed (create/update/delete)
Resource affected (biosample ID, phenopacket ID)
Sample state at time of action
Data Protection#
✅ All patient data encrypted at rest and in transit
✅ Organization isolation strictly enforced
✅ Session timeout after inactivity
✅ Multi-factor authentication available
✅ Complete audit logging for compliance
Getting Help#
Step 1: Check Your Role#
Verify your assigned healthcare roles:
Log in to SeqsLab
Navigate to User Profile
View Assigned Roles section
Confirm you have the appropriate healthcare role
Step 2: Verify Sample State#
Check the sample’s current lifecycle state:
Navigate to Reporter → Sample List
Find the sample
Check the State column
Verify your role has permissions for that state
Step 3: Contact Your Administrator#
If you need different permissions:
UserAdministrator: Can assign healthcare roles
OrganizationAdministrator: Can resolve organization-level issues
LaboratorySupervisor: Can help with workflow questions
Step 4: Submit Support Ticket#
For technical issues:
Email: support@seqslab.net
Include: username, organization, sample ID, action attempted, error message
Summary#
Healthcare RBAC provides a state-based permission model that enforces proper clinical laboratory workflows:
✅ Five Specialized Roles: Each role handles specific lifecycle stages
✅ State-Based Permissions: What you can do depends on sample state
✅ Quality Gates: Enforced review and approval checkpoints
✅ Separation of Duties: Different roles for different responsibilities
✅ Compliance Ready: Meets CLIA/CAP, HIPAA, GDPR requirements
✅ Complete Audit Trail: Every action logged for regulatory compliance
Quick Reference#
If you need to… |
You need this role |
|---|---|
Enter patient data |
ReporterDataEntryOperator |
Upload sequencing files |
MedicalTechnologist |
Run analysis pipelines |
BioinformaticsScientist |
Approve samples for reporting |
LaboratorySupervisor |
Sign out clinical reports |
MedicalDirector |