Security

Prev Next

Security and information security are ensured in the Grassfish system in several ways:

Transport and perimeter

Transport and perimeter includes the following measures:

  • HTTPS: The platform operates exclusively over HTTPS. Unencrypted HTTP is disabled.

  • TLS and load balancing: The Application Gateway handles TLS termination and load balancing. A Web Application Firewall (WAF) can be enabled with standard and custom rule sets, such as Azure Bot Manager rule sets.

  • DDoS protection: An Azure DDoS protection plan can be added.

  • Network security groups: Network security groups separate subnets (nodes, pods, SQL, AppGW) according to Azure best practices. Internal services are only accessible via defined APIs.

API security and integrations

System-to-system integrations: System-to-system integrations authenticate themselves via the following methods, depending on the scenario:

  • Session ID

  • API keys

  • JWT tokens

  • OAuth2 client credentials (for modern integrations)

Rate limiting: Rate limiting is primarily implemented via infrastructure components (Application Gateway or API management). It is intentionally kept lean within the core product to maintain integration flexibility.

Secure SDLC and third-party packages

Secure software development life cycle (SDLC) and third-party packages are handled as follows:

  • Third-party checks: Third-party dependencies (NuGet, npm) are regularly checked and updated.

  • GitHub scans: GitHub scans support dependency checks and static code analysis. Container images can also be scanned.

CIA triad

The CIA triad relies on three key factors:

Confidentiality

  • Access only via SSO or authenticated logins

  • Fine-grained role and permissions model

  • Encryption of all connections via TLS

Integrity

  • Transactions for critical write operations

  • Checksums for media files, retransmission in case of errors

  • Input filtering and validation in the backend

  • Versioned deployments to reproduce defined system states

Availability

  • Redundant instances, automatic recovery of pods or nodes

  • Backups and a DR corridor (RTO/RPO in the minutes to hours range, project-dependent)

  • Monitoring and alerting

  • Local player cache for content