Elyra
Elyra The coding agent e The native code editor Elyra Grove Native local development environment Askr The real server for Laravel & PHP Elyra Framework Rust + Svelte 5 framework for desktop apps Elyra Conductor Local project conductor Elyra SQL Server MySQL-compatible SQL server in Rust Elyra Félagi Agents as teammates on one board Elyra SQL Client Native desktop SQL workbench Elyra SQL Anywhere Replication-ready SQL engine Elyra Sjá SEO & GEO workspace for macOS Elyra DataGrid Server-driven data grid for Laravel
Release notes
Changelog
Elyra

Security

ElyraSQL Client is designed so that your data and credentials stay under your control.

Credentials

  • Connection passwords are stored in the OS keychain — macOS Keychain, Windows Credential Manager, or the Linux Secret Service — and are never written to disk in cleartext.
  • Removing a connection also deletes its keychain entry.

Where queries run

  • Queries execute in the Rust core; the UI (webview) only receives results.
  • The core reads credentials from the keychain and opens connections on demand.

How writes are authorized

Every mutating operation goes through a single choke point in the connection broker. A write cannot execute without a write authorization, and obtaining one is the only place the policy is checked:

  • read-only connections are refused outright;
  • production connections require an explicit confirmation, which the app asks for and then retries with.

Because the authorization is required by the type system, a newly added feature cannot accidentally bypass the rails — it won't compile without one. Server commands that don't touch user data (BACKUP TO, KILL) are the only documented exceptions.

Correct SQL quoting

All SQL is generated through one central, engine-aware quoting layer, so identifiers and values are escaped per dialect (MySQL/ElyraSQL processes backslash escapes in strings; SQLite does not). Values are always quoted — never inlined as bare numbers — so text like 007 cannot be altered in transit. This layer is unit-tested, including LIKE metacharacter escaping.

Safety rails

  • Destructive actions preview their SQL (inline edits, table designer, truncate/drop) and require confirmation before running.
  • Read-only connections refuse writes and DDL.
  • Production connections require an explicit confirmation for writes and draw a red window frame.
  • The client only ever narrows access — the server's own privileges always apply.

Transport

  • TLS is used opportunistically and can be required per connection. Require TLS is enabled automatically for any non-local host, so a connection that leaves your machine is encrypted by default (you can still override it).
  • The app reports the actual transport state, asked of the server rather than inferred from your settings: an encrypted session shows a 🔒, and a remote connection carrying data in clear text is flagged ⚠ unencrypted in the toolbar and in the Test connection result.
  • SQLite connections are local files with no network transport, so they are never flagged.

Licensing privacy

License validation sends only your key, the app name/version and an opaque per-install id to elyracode.com. No database contents are transmitted. See Editions & Licensing.

Reporting a vulnerability

Please report privately — see the repository's SECURITY.md. Do not open a public issue for security reports.