Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

removed old issues, added some security pages #982

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions source/authentication/overview.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.. _authentication-overview:

Overview
========
Authentication Overview
=======================

Configuring Open OnDemand to work with an Apache authentication module can be
broken down into three procedures:
Expand Down
2 changes: 1 addition & 1 deletion source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,10 @@ These are institutions who were early adopters or provided HPC resources for dev

architecture
reference
security
release-notes
version-policy
glossary
issues/overview

.. _website: https://openondemand.org/
.. _bowdoin: https://www.bowdoin.edu/it/resources/high-performance-computing.html
Expand Down
184 changes: 0 additions & 184 deletions source/issues/overview.rst
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we remove this page as a separate PR? I'd love to say we have no known issues, but alas, we kinda do.

This file was deleted.

38 changes: 38 additions & 0 deletions source/security.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
.. _security:

Security
=================

Introduction
------------

This document provides an overview of the security framework implemented in Open OnDemand, detailing security features, general policies, and procedures.

.. toctree::
:maxdepth: 2
:caption: Security Topics

security/vulnerability-management
authentication/overview
how-tos/monitoring/logging
customizations
Comment on lines +16 to +18
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not clear to me why these are here. They seem to fill up the page, but it's not immediately clear how, say customizations, are related to security?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Logging and Auth are paramount in security, leave them.

Customization I can see as we have things about disabling users in there and file uploads being set. It's security, don't skimp on info.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Logging and Auth are paramount in security, leave them.

Authentication is required either way - I can setup basic auth and call it a day, but that doesn't mean it's secure. And just having it in a ToC doesn't tell me that.

Counterintuitively, the more text you have on a page, the less any of it is read.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think at least the below are related to security. Maybe I can update the list and fold the whole "Security Topics" somehow so the links aren't in the way.

Announcements
Message of the Day (MOTD)
Overriding Pages
Add URLs to Help Menu
Configuration Profiles
Changing the Navigation bar
Interactive Apps Menu
Set Upload Limits
Set Download Limits
Block or Allow Directory Access
Disabling Users
Set Default SSH Host
Set SSH Allowlist
Set OOD SSH Port
Shell App SSH Command Wrapper
Fix Unauthorized WebSocket Connection in Shell App
Job Composer Script Size Limit
Hiding Job Arrays
Custom Error Page for Missing Home Directory on Launch
Customize Text in OnDemand
Disk Quota Warnings on Dashboard
Balance Warnings on Dashboard
Maintenance Mode
Disable Host Link in Batch Connect Session Card
Set Illegal Job Name Characters
XDMoD Integration
Accessing Remote File Systems
Cancel Interactive Sessions
Custom Pages
Support Tickets


Security Features
-----------------
Comment on lines +20 to +21
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the main point here should be more like Security Concerns. Here are some off bullet points I'd add/think folks are expecting.

I think folks are trying to answer the question if I install this, what security concerns do I need to account for?. This page should answer that.

The good:

  • PUN (Per user Nginx) architecture. The web servers that the user will ultimately interact with use are processes' ran by that user. That is, the root user does not serve requests. Only non-root users serve requests and user request are always routed to the nginx of that same user. This ensures that things like file accesses (or any action taken by the webservers) are always made under the non-root user.
  • Apache authentication is required. The type of authentication scheme is up to the individual site. Basic authentication mechanisms like Basic or LDAP are discouraged and undocumented because they are insecure.

The bad:

  • HTTP only traffic to origin servers (compute nodes). When running applications like Jupyter, apache will proxy traffic back to the origin server (Jupyter on a compute node) over plain http traffic. There's ongoing work to make this https traffic.


- **Authentication**: Details the authentication mechanisms supported by Open OnDemand. For more information, see :ref:`more about our authentication process <authentication-overview>`.

- **Authorization**: Describes the authorization model, including the management and enforcement of permissions within Open OnDemand.

- **Data Protection**: Outlines measures for protecting sensitive data within the platform, including encryption protocols for data in transit and at rest.

- **Monitoring and Logging**: Discusses the extensive logging and monitoring capabilities of Open OnDemand, crucial for security auditing and incident response. For more information, see :ref:`logging`.

- **Vulnerability Management**: Provides details on how vulnerabilities are identified, reported, and managed within the platform. See :ref:`vulnerability-management`.

- **Security Audits**: The Open OnDemand core development team has engaged with Trusted CI, the NSF Cybersecurity Center of Excellence, for vulnerability assessments and security policy development. The latest report from these engagements can be accessed `here <https://openondemand.org/sites/default/files/documents/Trusted%20CI%20Open%20OnDemand%20Engagement%20Final%20Report%20-%20REDACTED%20FOR%20PUBLIC%20RELEASE%20210712_0.pdf>`_.

Conclusion
----------

Maintaining robust security is pivotal for the operation of Open OnDemand. Ongoing efforts are dedicated to strengthening the security measures in place. Users and administrators are encouraged to adhere to the outlined best practices and security guidelines to ensure a secure operational environment.
42 changes: 42 additions & 0 deletions source/security/vulnerability-management.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
.. _vulnerability-management:

Vulnerability Management
========================

Introduction
------------

Vulnerability management is a critical component of the security strategy for Open OnDemand. This document outlines the procedures for reporting and managing vulnerabilities using GitHub, ensuring the platform remains secure and robust against potential threats.

Reporting a Vulnerability
-------------------------

If you have security concerns or think you have found a vulnerability, please submit a private report by visiting the 'Security' section of our GitHub located at [GitHub Open OnDemand Security](https://github.com/OSC/ondemand/security/) and clicking 'Report a vulnerability'.

For direct inquiries or issues in submitting a report, contact the core project team via email at [email protected].

Disclosure Policy
-----------------

- Upon reporting, you will receive a response within hours, acknowledging the receipt of the report.
- A primary handler from the team will be assigned to coordinate the fix and release process:
- Confirm the problem and determine the affected versions (1-2 days).
- Audit code to find any potential similar problems (1-2 days).
- Prepare fixes for all releases still under maintenance and release as soon as possible (2-7 days).

Comments on Policy
------------------

Suggestions to improve this process can be made via submitting a ticket, opening a Discourse topic, or a pull request.

Security Audits
---------------

Open OnDemand has been audited several times by Trusted CI, the NSF Cybersecurity Center of Excellence. These audits have helped shape the security landscape of the platform and contribute to its ongoing security enhancements.

Conclusion
----------

Effective vulnerability management is crucial for maintaining the security and integrity of Open OnDemand. Users and contributors play a vital role in this process by reporting potential security vulnerabilities through GitHub, ensuring the platform's continued safety.

.. note:: For details on the specific vulnerability management steps, please see the GitHub repository guidelines or the security policies linked above.
Loading