
WedgeWoodAI Golf Club Management System
Last updated: 20 June 2026
WedgeWoodAI takes the security of the GCMS National Platform and the data of all enrolled golf clubs, members, and administrators seriously. This policy outlines the technical and organizational measures we implement to protect your data against unauthorized access, loss, alteration, or disclosure.
All passwords are hashed using bcrypt with a cost factor of 12. Passwords are never stored in plain text. Minimum 8-character requirement is enforced at registration, with a 128-character maximum to prevent denial-of-service via excessive hashing.
TOTP-based two-factor authentication is available for all accounts using authenticator apps (Google Authenticator, Authy, etc.). 2FA codes use a strict 1-window tolerance.
All authentication endpoints enforce rate limiting — accounts are temporarily locked after 5 failed login attempts for 15 minutes. This applies to password verification, 2FA code verification, and credential checking endpoints.
Cloudflare Turnstile integration is available for CAPTCHA-based bot protection on authentication flows. When configured, all requests are verified server-side before processing.
Secure OAuth 2.0 integration with Google Sign-In. Account linking protections prevent unauthorized email takeover via third-party SSO providers.
The GCMS platform implements a multi-level authorization system to ensure users can only access data and perform actions appropriate to their role:
Full platform access. Manage users, roles, clubs, and all data. Can grant/revoke platform access.
Read and write access. Can onboard clubs, manage events, and modify platform data.
Read-only access. Can view dashboards, clubs, events, and tee time data.
All API endpoints verify both authentication (valid session) and authorization (sufficient role level) before processing requests. Middleware enforces platform role requirements at the routing level.
All platform traffic is encrypted in transit using TLS. HTTP Strict Transport Security (HSTS) is enforced with a 2-year max-age, including subdomains and preload.
Every response includes: X-Content-Type-Options (nosniff), Referrer-Policy (strict-origin-when-cross-origin), Permissions-Policy (camera, microphone, and geolocation disabled).
All API responses include Cache-Control: no-store to prevent sensitive data caching. Session cookies are HTTP-only with SameSite=Lax and Secure flags in production.
Databases are hosted on managed infrastructure with encrypted connections. Application queries use parameterized statements via Prisma ORM, preventing SQL injection.
In the event of a security incident or data breach:
If you discover a security vulnerability in the GCMS platform, we encourage responsible disclosure. Please report vulnerabilities to [email protected]. We ask that you do not publicly disclose the vulnerability until we have had an opportunity to investigate and address it. We commit to acknowledging receipt within 48 hours and providing an initial assessment within 5 working days.
We regularly review and update our security practices to address emerging threats and vulnerabilities. This includes periodic security audits, dependency updates, and monitoring for known vulnerabilities in platform components. This policy is reviewed quarterly and updated as necessary.