← Blog Nyura Blog
Nona Banana mascot encouraging secure app development

Why Your Productivity App Must Treat Security as a Feature

A real-world story about how we caught a data isolation bug in our travel module, fixed it in hours, and what it taught us about building apps that respect your privacy by default.

March 9, 2026 4 min read Cyril Simonnet
SecurityPrivacyTravel

The Bug No One Noticed — Until a Beta Tester Did

Last week, a beta tester reported something unusual: they could see someone else's travel itinerary on their home screen. Not their own flights. Not their own hotels. Someone else's trip to Tokyo was sitting right there on their dashboard. That is the kind of report that makes your stomach drop. Privacy is not negotiable. Your travel plans, your meeting notes, your task lists — those belong to you and no one else. We treated this as a top-priority emergency and investigated immediately.

What Went Wrong: A Lesson in Database Views

Here is the technical reality, explained simply. Modern databases have a security feature called Row-Level Security (RLS). Think of it like a personal mailbox: even though everyone's letters are stored in the same post office, you can only open your own box. Nyura uses RLS everywhere — your tasks, contacts, projects, and notes are all protected this way. But our travel module used a special database construct called a "view" — a virtual table that combines data from multiple sources into one clean format. The problem? This view was running with administrator-level access, which meant it bypassed everyone's personal mailbox lock. The data was there, the locks were there, but the view had a master key it should not have had.

The Fix: Two Layers of Protection

We did not just patch the hole. We built a double wall. First, at the database level, we told the view to respect the same security rules as every other table. No more master key — now it checks who is asking before showing any data. Second, at the application level, we added explicit filters to every single travel query. Even if someone found a way around the database lock, the application itself now refuses to fetch anyone else's data. This "defense in depth" approach means a single point of failure can never expose your information. Both layers must fail simultaneously for any data to leak — and each layer is independently tested.

Beyond the Fix: What This Means for Every Feature

Finding this bug was actually a good thing. It triggered a full security audit of every data query in the app. We checked tasks, contacts, projects, companies, music playlists, voice recordings, and calendar events. Every single query now has an explicit user filter, regardless of what the database security rules already enforce. We also added this check to our standard development process: any new feature that reads data must include both a database-level security rule and an application-level user filter. Two independent locks. Always. This is the principle of "never trust a single layer." Banks do not rely on just one vault door. Neither should your productivity app.

Why Transparency Matters More Than Perfection

We could have fixed this quietly. Most companies do. But we believe you deserve to know. If an app handles your personal data — your schedule, your travel plans, your business contacts — you should know exactly how seriously the team behind it takes security. We write about our bugs openly because trust is not built on marketing pages. It is built on honesty. Every productivity app will have bugs. What matters is how fast they are found, how thoroughly they are fixed, and whether the team tells you about them. We found this one within hours of the report, fixed it the same day, deployed the fix to all platforms (web, iOS, Android), and you are reading about it right now. That is our standard.

Your Data Checklist: How Nyura Protects You

Here is a quick summary of how we keep your data safe. Row-Level Security on every table — your data is invisible to other users at the database level. Double-filtered queries — every request checks your identity twice (database and application). End-to-end encryption for data in transit — all communication uses HTTPS with modern TLS. No third-party analytics tracking — we do not sell or share your data. GDPR-compliant data handling — you can export or delete your data at any time. Regular security audits — triggered by both automated monitoring and human review. Transparent incident reporting — if something goes wrong, we tell you about it. Your productivity app knows where you are traveling, who you are meeting, and what you are working on. That level of trust demands this level of protection.

Try Nyura for free

Available on iOS, Android, and web. No credit card required.

Get Started →