Part of the ridentity.online branding migration. The EncryptID auth
server is now accessible at auth.ridentity.online (with the legacy
encryptid.jeffemmett.com kept as a backward-compatible alias).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Also imported by portal/views_shared_space.py but never defined,
causing a second ImportError after the SpacePermission fix.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The SpacePermission DRF permission class was imported in files/views.py
but never defined, causing an ImportError that crash-looped the app.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add EncryptID as a DRF authentication class:
- Add encryptid_auth.py with EncryptIDAuthentication backend
- Verifies Bearer tokens against EncryptID server
- Auto-creates Django User from DID claims
- Add ENCRYPTID_SERVER_URL and ENCRYPTID_JWT_SECRET settings
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>