V6.4.1 Release Notes
Release Date: 2026-03-26
Overview
V6.4.1 introduces a critical security feature for public deployments: Admin control over player PIN change permissions. This feature allows administrators to restrict regular users from changing their PINs, which is essential for maintaining account security in public environments.
๐ New Features
Player PIN Change Restriction
- Feature: Admin can control whether players can change their own PINs
- Setting:
AllowPlayerPinChange(boolean, default: true) - Access: Admin-only configuration in Admin settings
- Impact: When disabled, only Admins can change PINs
Behavior Changes
- When Enabled (default): Players see full PIN change functionality
- When Disabled: Players see message directing them to contact admin
- Admin Exemption: Admin users are unaffected by this restriction
๐ง Technical Implementation
Database Changes
- Added
AllowPlayerPinChangecolumn toSettingstable - Default value:
true(maintains backward compatibility) - Automatic migration for existing databases
Code Changes
- AppSettings.cs: Added
AllowPlayerPinChangeproperty - SettingsService.cs: Added getter/setter methods
- Admin.razor: Added admin control toggle
- Player.razor: Added conditional UI rendering
- DbSeeder.cs: Updated default settings
New API Methods
public async Task<bool> GetAllowPlayerPinChangeAsync()
public async Task<bool> UpdateAllowPlayerPinChangeAsync(bool newValue)
public bool AllowPlayerPinChange { get; }
๐ก๏ธ Security Enhancements
Public Deployment Ready
- Prevents unauthorized PIN changes in public environments
- Maintains administrative control over user credentials
- Reduces risk of account lockouts and security breaches
Admin Control
- Only Admin users can change this setting
- Setting located in Admin settings page
- Real-time UI updates for players
User Experience
- Clear messaging when PIN change is disabled
- Seamless transition when setting changes
- No impact on Admin PIN change capabilities
๐ฑ User Interface Changes
Admin Page
- Added checkbox: โAllow players to change their PINโ
- Includes informational note about restriction behavior
- Integrated into existing settings save workflow
Player Page
- Conditional rendering based on admin setting
- Disabled state shows helpful message
- Maintains consistent styling
UI States
Enabled State:
โโโ "Change My PIN" heading
โโโ Current PIN input
โโโ New PIN input
โโโ Change PIN button
Disabled State:
โโโ "PIN Change" heading
โโโ "PIN change is currently disabled. Please contact an administrator..."
๐ Backward Compatibility
Existing Deployments
- No Breaking Changes: Default behavior preserved
- Gradual Adoption: Can enable/disable as needed
- No User Impact: Existing functionality maintained until changed
Migration Path
- Deploy V6.4.1 - no immediate changes
- Admin decides on PIN change policy
- Configure setting accordingly
- Users see updated interface
๐ Configuration
Admin Setup
- Login as Admin (PIN: 9999)
- Navigate to Admin page
- Scroll to Settings section
- Find โAllow players to change their PINโ checkbox
- Toggle as desired
- Click Save
Recommended Settings
- Public Deployments: Disable (false)
- Private/Development: Enable (true)
- Corporate/Educational: Disable (false)
๐งช Testing
Verification Steps
- Admin Control Test
- Login as Admin
- Toggle setting
- Verify save success
- Player UI Test
- Login as Player
- Verify UI matches setting
- Test both enabled/disabled states
- PIN Change Test
- Attempt PIN change as Player
- Verify restriction works when disabled
- Confirm Admin can still change PINs
Test Cases Passed
- โ Setting loads correctly on Admin page
- โ Setting saves and persists
- โ Player UI updates in real-time
- โ PIN change restriction works
- โ Admin exemption works
- โ Database migration works
- โ Default behavior preserved
๐ Documentation
New Documentation
player-pin-change-restriction.md- Comprehensive feature guidev6.4.1-release-notes.md- This release document
Updated Documentation
- Admin interface documentation
- Security best practices guide
- Public deployment checklist
๐ฆ Deployment Notes
Production Deployment
- Feature is disabled by default for existing deployments
- No immediate user impact
- Admin can configure as needed
New Deployments
- Consider security requirements
- Configure setting before user onboarding
- Document PIN change policy for users
Database Requirements
- No manual database updates required
- Automatic column addition
- Compatible with existing data
๐ Debugging & Troubleshooting
Common Issues
- Setting doesnโt save: Verify Admin permissions
- Players still see PIN change: Refresh browser cache
- Admin canโt change PIN: This restriction doesnโt affect Admins
Debug Information
- Check
Settings.AllowPlayerPinChangein database - Verify user roles and permissions
- Check browser console for JavaScript errors
๐ Performance Impact
Minimal Overhead
- One additional boolean setting
- Simple conditional rendering
- No database query performance impact
- Negligible memory footprint
Scalability
- No impact on concurrent users
- Efficient setting caching
- Real-time UI updates
๐ฎ Future Considerations
Potential Enhancements
- Role-based PIN change permissions
- Time-based PIN change restrictions
- PIN change approval workflow
- Audit logging for PIN change attempts
Monitoring
- Track PIN change frequency
- Monitor setting changes
- Alert on unusual patterns
๐ฏ Use Cases
Public Gaming Websites
- Prevent unauthorized account changes
- Maintain account security
- Reduce support overhead
Educational Institutions
- Control student account access
- Maintain classroom management
- Prevent account sharing
Corporate Environments
- Ensure compliance with security policies
- Maintain audit trails
- Control employee access
๐ Checklist
Pre-Deployment
- Review security requirements
- Determine PIN change policy
- Plan user communication
Post-Deployment
- Configure setting as needed
- Test player experience
- Update user documentation
Monitoring
- Monitor for issues
- Track user feedback
- Review security logs
๐ Summary
V6.4.1 delivers a critical security feature that makes the application ready for public deployment. The Admin PIN change control provides the necessary security oversight while maintaining flexibility for different deployment scenarios.
Key Benefits
- โ Public Deployment Ready
- โ Admin Control Over Security
- โ Backward Compatible
- โ User-Friendly Interface
- โ Comprehensive Documentation
This release represents the final step in preparing the application for public deployment, providing administrators with the tools needed to maintain account security in production environments.
Version: 6.4.1
Release Date: 2026-03-26
Security Level: High
Deployment Ready: โ
Yes
Backward Compatible: โ
Yes