Skip to content

Latest commit

 

History

History
79 lines (43 loc) · 3.79 KB

File metadata and controls

79 lines (43 loc) · 3.79 KB
graph LR
    iRODSSession["iRODSSession"]
    ConnectionPool["ConnectionPool"]
    Connection["Connection"]
    Auth["Auth"]
    ClientServerNegotiation["ClientServerNegotiation"]
    PasswordObfuscation["PasswordObfuscation"]
    iRODSSession -- "relies on to manage" --> ConnectionPool
    ConnectionPool -- "manages" --> Connection
    ConnectionPool -- "provides instances to" --> iRODSSession
    Connection -- "delegates authentication to" --> Auth
    Connection -- "interacts with during connection setup" --> ClientServerNegotiation
    Auth -- "utilizes for credential security" --> PasswordObfuscation
Loading

CodeBoardingDemoContact

Details

This subsystem is responsible for establishing and maintaining secure, persistent connections with the iRODS server, encompassing all aspects of user authentication and efficient session management.

iRODSSession

The primary high-level interface for client applications. It orchestrates the overall session lifecycle, manages configuration, and handles account details. It serves as the main entry point for users to initiate and manage their interactions with the iRODS server.

Related Classes/Methods:

ConnectionPool

Manages a pool of Connection instances to optimize performance and resource utilization. It ensures efficient reuse of established connections, reducing overhead for repeated server interactions.

Related Classes/Methods:

Connection

Handles low-level network communication, including establishing TCP/IP connections, performing SSL/GSI handshakes, and managing raw data transfer with the iRODS server. It is responsible for the physical link to the server.

Related Classes/Methods:

Auth

Encapsulates various authentication mechanisms (Native, PAM, GSI). It manages the authentication handshake process and handles credential management, ensuring secure client identification to the iRODS server.

Related Classes/Methods:

ClientServerNegotiation

Responsible for the initial negotiation of capabilities and authentication mechanisms between the client and the iRODS server. This ensures compatibility and proper setup for secure communication.

Related Classes/Methods:

PasswordObfuscation

Provides utilities for securing password data through encoding, decoding, scrambling, and unscrambling operations. It supports the Auth component in handling sensitive credentials.

Related Classes/Methods: