Information Security Policy

Last reviewed 2026-08-14 · Owner: Dylan Coats (Owner / Information Security Officer) · Coats Labs

Scope

This policy covers Stewardly, a household budgeting application that stores users' financial account data (balances, transactions) and connects to a third-party financial data aggregator (SimpleFIN) to retrieve it. It applies to the production application, its database, and the infrastructure it runs on.

Risk identification, mitigation, and monitoring

As a single-developer project, risk identification happens primarily through deliberate code review during development rather than a separate scheduled audit process — every change that touches authentication, financial data access, or secrets handling is reviewed against this policy before it ships. Runtime risk is monitored via the access log described below and via Azure's own platform-level monitoring for the database, Key Vault, and Function App. This is an area intended to mature as the project grows (see "Planned improvements" at the end of this page).

Data classification

Access control

Authentication

Encryption

Secrets management

All secrets (database credentials, encryption keys, third-party API credentials) live in Azure Key Vault, never in source control or plaintext configuration files. The Function App authenticates to Key Vault via its Azure Managed Identity — no long-lived Key Vault credential exists anywhere in the application itself.

Secure development practices

Vulnerability management

Monitoring and logging

Every authentication event (successful login, failed login, lockout, 2FA/passkey failure) is recorded in an access log with timestamp, username, outcome, source IP, and user agent, scoped per household and visible to that household's admins. This is the primary detective control for credential abuse today.

Incident response

In the event of a suspected compromise:

  1. The affected user's password is reset, which immediately invalidates their existing session(s) household-member-wide via the session-version mechanism.
  2. If a shared secret (encryption key, API credential) is suspected compromised, it is rotated in Key Vault immediately.
  3. Affected users are notified directly by the application owner.
  4. The access log is reviewed to scope the extent of any unauthorized access.

Planned improvements

← Back to Stewardly  ·  Privacy Policy