Introduction
Sign in once. Access everywhere.
Fabi-SC ID makes authentication simple - for users and developers alike.
For Users
- Create an account once, use it everywhere
- Control which applications have access to your data
- Manage your profile and privacy settings in one place
- Export or delete your data at any time (GDPR-compliant)
For Developers
- Integrate user authentication without building it yourself
- Request only the user data your application needs
- Receive notifications when users revoke access
Getting Started
- Users: Create an account to get started
- Developers: Register your application to integrate with Fabi-SC ID
Account
Creating an Account
- Go to the Fabi-SC ID website
- Click “Register”
- Fill in your details:
- Username (unique, cannot be changed later)
- Email address
- Password
- Click “Create Account”
Email Verification
After clicking “Create Account”, you will see a Security Check (random words) on your screen. You will also receive a verification code by email.
- Verify the Security Check: Compare the words shown on your screen with the words in the email - they must match. This protects you from phishing attacks.
- Log in with your username and password
- Enter the 6-digit verification code from the email
- Click “Verify Email”
If you need to resend the verification email, click “Resend” on the verification screen. A new Security Check will be displayed.
A verified email is required to:
- Access your account
Logging In
- Go to the Fabi-SC ID website or click “Sign in with Fabi-SC ID” in a supported application
- Enter your username (or email) and password
- If you have two-factor authentication enabled, enter your code
Two-Factor Authentication (2FA)
You can secure your account with two-factor authentication:
- TOTP (Authenticator App): Use an app like Google Authenticator, Authy, or any other TOTP-compatible app
- Security Key: Use a hardware security key (like YubiKey) for phishing-resistant 2FA
To enable 2FA:
- Go to your Security Settings in the Dashboard
- Choose your preferred 2FA method
- Follow the setup instructions
You can have both methods enabled at the same time. When logging in, you can choose which method to use.
Passkeys (Passwordless Login)
In addition to 2FA, you can set up passkeys for passwordless login:
- Passkeys let you sign in without entering your password
- They use your device’s biometric authentication (fingerprint, face) or a hardware key
- Passkeys are more secure than passwords because they cannot be phished
To add a passkey:
- Go to your Security Settings in the Dashboard
- Click “Add Passkey”
- Follow your browser’s instructions to register your device
When signing in, click “Sign in with Passkey” instead of entering your password.
Password Requirements
- Minimum 8 characters
- At least one uppercase letter
- At least one lowercase letter
- At least one number
- At least one special character
Changing Your Email Address
You can change your email address from the Security Settings:
- Go to Security Settings in the Dashboard
- Click “Change Email”
- Enter your new email address
- If you have a verified backup email, you can optionally choose to use it for verification instead of your current email
- Click “Send Verification Codes”
- You will receive verification codes at both your current (or backup) email and your new email
- Verify the Security Check: Compare the words shown on your screen with the words in each email - they must match
- Enter both 6-digit codes and click “Verify”
You can change your email once per day.
Backup Email
A backup email is an alternative email address that can be used to:
- Reset your password if you lose access to your primary email
- Verify email changes if you lose access to your primary email
Setting Up a Backup Email
- Go to Security Settings in the Dashboard
- Click “Set Backup Email”
- Enter your backup email address
- Click “Send Verification Codes”
- You will receive verification codes at both your primary email and your new backup email
- Verify the Security Check: Compare the words shown on your screen with the words in each email - they must match
- Enter both 6-digit codes and click “Verify”
Removing a Backup Email
- Go to Security Settings in the Dashboard
- Click “Remove” next to your backup email
- If you have 2FA enabled, enter your authentication code
- Confirm the removal
Forgot Password
- Click “Forgot Password” on the login page
- Enter your email address (you can use your primary or backup email)
- Check your email for a reset code
- Verify the Security Check: Compare the words shown on your screen with the words in the email - they must match. This protects you from phishing attacks.
- Enter the reset code and create a new password
Dashboard
Your dashboard is where you manage your account, profile, and connected applications.
Profile
In the Profile section, you can view and edit your personal information:
- Display Name: How your name appears to applications
- Avatar: Your profile picture
- Email: Your email address (requires verification)
- Date of Birth: Used by applications that need age verification
- First Name / Last Name: Your real name (optional)
- Bio: A short description about yourself (max 160 characters)
- Website Links: Up to 5 website URLs
- Timezone: Your local timezone
- Language: Your preferred language
Not all applications can see all of your information. You decide what to share when you authorize each application.
Connected Apps
The Connected Apps section shows all applications that have access to your account.
For each application, you can see:
- The application name and logo
- When you authorized it
- What permissions it has (what data it can access)
Revoking Access
To disconnect an application:
- Go to Connected Apps
- Find the application you want to disconnect
- Click “Revoke”
- Confirm the action
After revoking access:
- The application immediately loses access to your data
- You may lose any data, purchases, or progress within that application
- The application will be notified of the disconnection
- You can re-authorize the application at any time
Sessions
The Sessions section shows all active login sessions and connected app tokens for your account.
You can see:
- Device/browser information (for login sessions) or app name (for app tokens)
- IP address (login sessions only)
- When the session was created
- When it was last used
If you see a session you don’t recognize, you can terminate it immediately.
Security
The Security section lets you manage your account security:
- Change Password: Update your password
- Change Email: Change your email address (requires verification from both old and new email)
- Backup Email: Set up a recovery email for account recovery
- Two-Factor Authentication: Enable or disable 2FA
- Passkeys: Add passwordless login options
Login History
The Login History section shows your recent sign-in activity.
For each login attempt, you can see:
- Status: Whether the login was successful or failed
- Method: How you logged in (password, passkey)
- Location: Approximate location based on IP address
- IP Address: The IP address used
- Date: When the login occurred
You can delete your entire login history at any time. Entries older than 90 days are automatically deleted.
Note: Location is an estimate based on your IP address and may differ significantly from your actual location.
Notifications
The Notifications section shows system messages and alerts about your account.
You may receive notifications about:
- Admin actions: If an administrator removes content from your profile
You can:
- Mark individual notifications as read
- Mark all notifications as read
- Delete individual notifications
- Delete all notifications
Privacy
Fabi-SC ID is designed with your privacy in mind. You have full control over your data.
Data Export
You can download all data stored about you at any time. This includes:
- Your profile information
- Login history
- Active sessions
- Connected applications and granted permissions
- Verified domains (if you’re a developer)
- Applications you’ve created (if you’re a developer)
To export your data:
- Go to your Dashboard
- Navigate to Profile
- Click “Download My Data”
- A JSON file will be downloaded containing all your data
The export follows GDPR Art. 15 (Right of Access) and includes metadata explaining what each field contains.
Data Retention
Fabi-SC ID follows these retention policies:
| Data Type | Retention Period |
|---|---|
| Login History | Automatically deleted after 90 days |
| Login Sessions | Deleted on logout or expire after 15 days |
| App Tokens | Deleted on revoke or expire (lifetime set by app developer) |
| Account Data | Kept until you delete your account or are permanently banned |
| Banned Accounts | Personal data deleted 1 year after permanent ban |
Delete Account
You can permanently delete your account at any time.
Before deleting, be aware that:
- All your data will be permanently removed
- All connected applications will lose access immediately
- Applications will be notified that you have disconnected
- If you’re a developer, all your applications will be deleted
- This action cannot be undone
To delete your account:
- Go to your Dashboard
- Navigate to Profile
- Click “Delete Account”
- Confirm the deletion by typing “DELETE”
- Enter your password to confirm
What Happens to Connected Apps
When you delete your account:
- All connected applications are immediately notified via webhook
- Your tokens are invalidated
- Applications can no longer access any of your data
- The application receives your derived user ID (not your real ID) so it knows which user to remove
Third-Party Applications
When you authorize a third-party application:
- The application receives only the data you approve (scopes)
- The application receives a derived user ID, not your real ID
- Different applications receive different derived IDs
- This prevents applications from tracking you across services
- You can revoke access at any time
The application’s privacy policy (shown during authorization) applies to how they handle your data after receiving it.
Register Your Application
To integrate with Fabi-SC ID, you need to register your application in the Developer Dashboard.
Prerequisites
- A Fabi-SC ID account
- A domain you own and can verify
Creating an Application
- Log in to Fabi-SC ID
- Go to the Developer Dashboard
- Click “Create Application”
- Fill in the required information:
Required Fields
| Field | Description |
|---|---|
| Name | Your application’s name (1-128 characters) |
| Domain | The domain where your application runs (e.g., example.com) |
| Description | A brief description of your application (at least 3 words, max 1024 characters) |
Optional Fields
| Field | Description |
|---|---|
| Homepage URL | Your application’s homepage |
| Privacy Policy URL | URL to your privacy policy (shown to users during login) |
| Callback URL | Where users are redirected after login |
| Webhook URL | URL to receive webhook notifications (must use a domain, no IP addresses) |
Note: App Icon and Background Image are uploaded separately in the application settings after creation.
Domain Verification
Before your application can be used, you must verify ownership of your domain. This prevents others from impersonating your application.
Method 1: DNS TXT Record
- In your application settings, click “Verify Domain”
- Copy the verification token
- Add a TXT record to your domain’s DNS:
fabi-sc-id-verify=<your-verification-token> - Wait for DNS propagation (can take up to 24 hours)
- Click “Verify via DNS”
Method 2: HTTP File
- In your application settings, click “Verify Domain”
- Copy the verification token
- Create a file at:
https://yourdomain.com/.well-known/fabi-sc-id-verification.txt - The file should contain only the verification token (no extra whitespace)
- Click “Verify via HTTP”
Note: HTTP verification requires HTTPS. The file must be accessible via https://.
Credentials
After creating your application, you receive:
- Client ID: Your application’s public identifier (shown as “ID” in settings)
API Keys
API Keys are created separately in your application settings. You can have multiple API keys per application.
To create an API key:
- Go to your application settings
- Scroll to the “API Keys” section
- Click “Create Key”
- Copy the key immediately - it won’t be shown again!
Important: Keep your API keys secret. If compromised, revoke them immediately. Consider rotating your keys periodically.
Webhook Secret
If you configure a webhook URL, you need to generate a webhook secret:
- Go to your application settings
- Scroll to the “Webhooks” section
- Click “Rotate Secret”
- Copy the secret immediately - it won’t be shown again!
Use this secret to verify that webhook requests are authentic. You can rotate the secret at any time.
Scopes
Scopes define what user data your application can access. Configure which scopes your application needs:
| Scope | Description | Data |
|---|---|---|
openid | User identifier | Always included |
username | Username | User’s unique username |
display_name | Display name | User’s chosen display name |
avatar | Profile picture | URL to user’s avatar |
locale | Language | User’s preferred language |
email | Email address | User’s email |
email_verified | Email status | Whether email is verified |
date_of_birth | Date of birth | User’s birth date |
first_name | First name | User’s first name |
last_name | Last name | User’s last name |
bio | Biography | Short bio (max 160 chars) |
website_links | Websites | User’s website URLs (max 5) |
timezone | Timezone | User’s IANA timezone |
Required vs Optional Scopes
You can configure scopes as:
- Required: User must grant these to use your application
- Optional: User can choose whether to grant these
Users see all requested scopes during login and can toggle optional scopes.
Token Lifetime
Configure how long user tokens remain valid:
- Days (0-365)
- Hours (0-23)
- Minutes (0-59)
Default is 1 day. After expiration, redirect users to the login page to get a new token.
Allowed Origins
Configure which origins can make API requests to fetch user data. At least one origin is required.
When you create an application, the default origin is set to https://yourdomain.com based on your configured domain.
Origins must:
- Include the protocol (e.g.,
https://example.com) - Use a domain name (IP addresses are not allowed)
Integration Guide
This guide explains how to integrate Fabi-SC ID authentication into your application.
Overview
The authentication flow works as follows:
- User clicks “Sign in with Fabi-SC ID” in your application
- User is redirected to Fabi-SC ID to log in (if not already) and grant permissions to your application
- User is redirected back to your callback URL with a one-time code
- Your server exchanges the code for a token
- Use the token to access user data via the API
Step 1: Redirect to Login
When a user wants to sign in, redirect them to:
https://id.fabi-sc.com/consent/{your-app-id}
Replace {your-app-id} with your application’s Client ID.
See the Branding Guide for official login buttons.
What Happens
- If the user is not logged in, they are prompted to log in first
- The user sees your application name, logo, and requested permissions
- The user can toggle optional permissions on/off
- The user clicks “Allow” or “Deny”
First Login vs Returning Users
- First time: User sees all requested scopes and must approve
- Already connected: If permissions haven’t changed, user is redirected immediately
- Re-consent needed: If you changed required scopes, user must approve again
Step 2: Handle the Callback
After the user clicks “Allow” (or “Deny”), they are redirected to your callback URL with a code parameter:
https://yourapp.com/callback?code=abc123...
Important:
- The code is single-use
- The code expires after 5 minutes
- If the user clicked “Deny”, they will not be redirected to your callback
Step 3: Exchange Code for Token
Exchange the one-time code for an access token by calling the exchange endpoint.
Request:
POST https://id.fabi-sc.com/api/v1/exchange
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
{
"code": "abc123..."
}
Response:
{
"success": true,
"data": {
"token": "user-access-token",
"user_id": "derived-user-uuid",
"scopes": ["openid", "username", "email"]
}
}
The user_id returned is a derived ID unique to your application. See Privacy Considerations below.
Step 4: Use the Token
Store the token securely and use it to make API requests on behalf of the user.
See the API Reference for available endpoints.
Token Lifetime
Tokens expire based on your application’s configured lifetime (default: 1 day).
When a token expires:
- API requests return 401 Unauthorized
- Redirect the user to the login page to get a new token
You can validate a token at any time using the validate endpoint to check if it’s still valid.
Handling Re-consent
Sometimes users need to reconnect your application:
- You added new required scopes
- The user revoked a scope that your application requires
- You called the force-reconsent endpoint
When validating a token, check the reconsent flag in the response:
{
"success": false,
"error": "Re-consent required",
"reconsent": true
}
If reconsent is true, redirect the user to the login URL again.
Privacy Considerations
Derived User IDs
Fabi-SC ID provides your application with a derived user ID, not the user’s real ID.
- Each application receives a different ID for the same user
- IDs are deterministic (same user + same app = same derived ID)
- You cannot correlate users across different applications
- This protects user privacy
Minimal Data
Only request scopes you actually need. Users see all requested permissions and are more likely to trust applications that request minimal data.
Error Handling
All API responses follow this format:
{
"success": true|false,
"data": { ... } | null,
"error": "Error message" | null,
"reconsent": true|false
}
Common Errors
| Status | Error | Action |
|---|---|---|
| 401 | Invalid or missing API key | Check your API key |
| 403 | Domain not verified | Verify your domain |
| 403 | App banned | Contact support |
| 403 | Origin not allowed | Check allowed_origins setting |
| 400 | Invalid or expired code | Request a new code |
Example Flow
Here’s a complete example using Node.js with Express. The logic applies to any language or framework.
Important: The API key must never be exposed to the client. All API calls must be made from your server.
const express = require('express');
const app = express();
const APP_ID = 'your-app-id';
const API_KEY = 'your-api-key';
const API_BASE = 'https://id.fabi-sc.com/api/v1';
// 1. User clicks "Sign in" - redirect to Fabi-SC ID
app.get('/login', (req, res) => {
res.redirect(`https://id.fabi-sc.com/consent/${APP_ID}`);
});
// 2. User clicks Allow - handle the callback
app.get('/callback', async (req, res) => {
const { code } = req.query;
if (!code) return res.status(400).send('Missing code');
// 3. Exchange code for token
const response = await fetch(`${API_BASE}/exchange`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({ code })
});
const result = await response.json();
if (!result.success) return res.status(401).send(result.error);
const { token, user_id, scopes } = result.data;
// 4. Store token and user_id in your database/session
req.session.userId = user_id;
req.session.token = token;
// 5. Fetch user data
const userResponse = await fetch(`${API_BASE}/user`, {
headers: {
'Authorization': `Bearer ${API_KEY}`,
'X-User-Token': token
}
});
const userData = await userResponse.json();
// 6. Redirect to dashboard
res.redirect('/dashboard');
});
app.listen(3000);
API Reference
All API endpoints are under https://id.fabi-sc.com/api/v1/.
Authentication
All requests require an API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Most endpoints also require a user token in the X-User-Token header:
X-User-Token: USER_TOKEN
Response Format
All responses follow this format:
{
"success": true|false,
"data": { ... } | null,
"error": "Error message" | null,
"reconsent": true|false
}
The reconsent flag indicates whether the user needs to reconnect your application. If true, redirect the user to the login page.
POST /exchange
Exchange a one-time code for an access token.
Headers:
Authorization: Bearer API_KEY(required)
Request Body:
{
"code": "authorization-code"
}
Response:
{
"success": true,
"data": {
"token": "user-access-token",
"user_id": "derived-user-uuid",
"scopes": ["openid", "username", "email"]
},
"reconsent": false
}
Notes:
- The code is single-use and expires after 5 minutes
- The token lifetime is configured in your application settings
- The
user_idis a derived ID unique to your application
Errors:
| Status | Error |
|---|---|
| 400 | Invalid or expired code |
| 401 | Invalid or missing API key |
POST /validate
Check if a user token is still valid.
Headers:
Authorization: Bearer API_KEY(required)
Request Body:
{
"token": "user-access-token"
}
Response (valid token):
{
"success": true,
"data": {
"valid": true,
"user_id": "derived-user-uuid"
},
"reconsent": false
}
Response (invalid/expired token):
{
"success": true,
"data": {
"valid": false,
"user_id": null
},
"reconsent": false
}
Response (re-consent needed):
{
"success": false,
"error": "Re-consent required",
"reconsent": true
}
Notes:
successindicates whether the API request itself succeeded (valid API key, no server errors)validindicates whether the token is valid- A request can have
success: truewithvalid: false(e.g., expired token) - Banned users return
valid: false - If
reconsentistrue, redirect the user to reconnect
Errors:
| Status | Error |
|---|---|
| 401 | Invalid or missing API key |
| 403 | Domain not verified |
| 403 | App banned |
GET /user
Get user data for the authenticated user.
Headers:
Authorization: Bearer API_KEY(required)X-User-Token: USER_TOKEN(required)
Response:
{
"success": true,
"data": {
"id": "derived-user-uuid",
"username": "johndoe",
"display_name": "John Doe",
"avatar_url": "https://...",
"locale": "en",
"email": "john@example.com",
"email_verified": true,
"date_of_birth": "1990-01-15",
"first_name": "John",
"last_name": "Doe",
"bio": "Software developer",
"website_links": ["https://johndoe.com"],
"timezone": "Europe/Berlin"
},
"reconsent": false
}
Notes:
- Only fields for granted scopes are returned
- Fields the user hasn’t filled in are
null - The
idfield is always present (scopeopenid)
Errors:
| Status | Error |
|---|---|
| 401 | Invalid or missing API key |
| 403 | User has not granted permission |
| 403 | User profile incomplete. Missing data: … |
GET /avatar
Download the authenticated user’s avatar image.
Headers:
Authorization: Bearer API_KEY(required)X-User-Token: USER_TOKEN(required)
Query Parameters:
format: Image format -webporjpg(required)
Response:
- Content-Type:
image/webporimage/jpeg - Cache-Control:
private, max-age=3600
Returns the binary image data.
Errors:
| Status | Error |
|---|---|
| 400 | Invalid format |
| 400 | Missing format parameter |
| 403 | App has no ‘avatar’ scope |
| 404 | User has no avatar |
| 404 | Avatar file not found in format |
POST /revoke
Revoke a user token. Use this when a user logs out of your application.
Headers:
Authorization: Bearer API_KEY(required)
Request Body:
{
"token": "user-access-token"
}
Response:
{
"success": true,
"data": {
"revoked": true
},
"reconsent": false
}
POST /force-reconsent
Force a user to reconnect your application. Use this when you’ve added new optional scopes and want the user to see them.
Headers:
Authorization: Bearer API_KEY(required)X-User-Token: USER_TOKEN(required)
Response:
{
"success": true,
"data": {
"triggered": true
},
"reconsent": false
}
Notes:
- The next time you validate the user’s token,
reconsentwill betrue - The user will see the updated scopes when they reconnect
Errors:
| Status | Error |
|---|---|
| 404 | User has no existing permission |
Common Error Responses
| Status | Error | Description |
|---|---|---|
| 401 | Invalid or missing API key | Check your Authorization header |
| 403 | Domain not verified | Verify your domain in the Developer Dashboard |
| 403 | App banned | Your application has been suspended |
| 403 | Origin not allowed | Request origin not in allowed_origins |
| 403 | User has not granted permission | User hasn’t connected your app |
| 500 | Internal server error | Server-side error, try again later |
Webhooks
Webhooks notify your application when important events occur, such as when a user revokes access or deletes their account.
Setup
- Go to your application settings in the Developer Dashboard
- Enter your Webhook URL and save
- Click “Rotate Secret” to generate a Webhook Secret
- Copy the secret immediately (it won’t be shown again)
- Click “Send Test Webhook” to verify your setup
Payload Format
All webhook payloads follow this format:
{
"event": "event.type",
"timestamp": "2024-01-15T10:30:00Z",
"data": {
...
}
}
Signature Verification
All webhooks include a signature header to verify authenticity:
X-Webhook-Signature: sha256=<hex-encoded-hmac>
To verify:
- Get the raw request body (before parsing JSON)
- Compute HMAC-SHA256 using your Webhook Secret as the key
- Compare with the signature in the header
Example (Node.js/Express):
const crypto = require('crypto');
app.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => {
const signature = req.headers['x-webhook-signature'];
if (!signature) return res.status(401).send('Missing signature');
const expected = 'sha256=' + crypto
.createHmac('sha256', WEBHOOK_SECRET)
.update(req.body)
.digest('hex');
if (signature !== expected) return res.status(401).send('Invalid signature');
const payload = JSON.parse(req.body);
// Reject old webhooks to prevent replay attacks
const timestamp = new Date(payload.timestamp);
const age = Date.now() - timestamp.getTime();
if (age > 5 * 60 * 1000) return res.status(401).send('Webhook too old');
// Process the webhook...
res.status(200).send('OK');
});
Important: Always verify the signature before processing webhooks.
Note: Use express.raw() instead of express.json() to get the unparsed body. The signature is computed over the exact bytes sent - if Express parses and re-serializes the JSON, whitespace differences will cause signature mismatches.
Events
user.unlinked
Sent when a user’s connection to your application is severed.
Triggers:
- User revokes your application’s access
- User deletes their account
- Application banned and user connections cleaned up (after 1 year)
Payload:
{
"event": "user.unlinked",
"timestamp": "2024-01-15T10:30:00Z",
"data": {
"user_id": "derived-user-uuid"
}
}
Action: Delete all user data from your system. The user has revoked access to their data. They can reconnect later if they wish, but you must not retain their data after receiving this event.
test
A test webhook to verify your endpoint is working correctly.
Triggers:
- Developer clicks “Send Test Webhook” in the Dashboard
Payload:
{
"event": "test",
"timestamp": "2024-01-15T10:30:00Z",
"data": {
"message": "This is a test webhook from Fabi-SC ID"
}
}
Action: Return HTTP 200 to confirm receipt. No other action needed.
Delivery & Retry
- Webhooks are delivered via HTTP POST
- Your endpoint should return HTTP 2xx within 10 seconds
- Failed deliveries are retried up to 5 times with exponential backoff:
- 1st retry: 1 minute
- 2nd retry: 5 minutes
- 3rd retry: 30 minutes
- 4th retry: 2 hours
- 5th retry: 12 hours
- After 5 failed attempts, the webhook is marked as failed
Security
Your Webhook URL must:
- Use HTTPS (required)
- Use a domain name (IP addresses are not allowed)
- Be publicly accessible
These restrictions prevent Server-Side Request Forgery (SSRF) attacks.
Best Practices
- Always verify signatures - Never process unverified webhooks
- Check the timestamp - Reject webhooks with timestamps older than 5 minutes to prevent replay attacks
- Respond quickly - Return 200 immediately, then process asynchronously
- Be idempotent - The same webhook might be delivered multiple times
- Handle unknown events - Ignore event types you don’t recognize (for forward compatibility)
Testing
Use the “Send Test Webhook” button in your application settings to:
- Verify your endpoint is reachable
- Confirm signature verification is working
- Test your webhook handling logic
Branding
Use these official buttons and guidelines when integrating Fabi-SC ID into your application.
Logo
The official Fabi-SC ID logo:
Available at:
https://id.fabi-sc.com/assets/logo.webp(recommended)https://id.fabi-sc.com/assets/logo.png
Button Preview
HTML Code
Copy and paste these code snippets into your application. Replace YOUR_APP_ID with your application’s Client ID.
Light Button
<a href="https://id.fabi-sc.com/consent/YOUR_APP_ID" class="fabi-btn fabi-btn-light">
<img src="https://id.fabi-sc.com/assets/logo.webp" alt="" width="24" height="24">
<span>Sign in with Fabi-SC ID</span>
</a>
Dark Button
<a href="https://id.fabi-sc.com/consent/YOUR_APP_ID" class="fabi-btn fabi-btn-dark">
<img src="https://id.fabi-sc.com/assets/logo.webp" alt="" width="24" height="24" style="filter: brightness(100)">
<span>Sign in with Fabi-SC ID</span>
</a>
Neutral Button
<a href="https://id.fabi-sc.com/consent/YOUR_APP_ID" class="fabi-btn fabi-btn-neutral">
<img src="https://id.fabi-sc.com/assets/logo.webp" alt="" width="24" height="24">
<span>Continue with Fabi-SC ID</span>
</a>
Icon Only
<a href="https://id.fabi-sc.com/consent/YOUR_APP_ID" class="fabi-btn-icon" title="Sign in with Fabi-SC ID">
<img src="https://id.fabi-sc.com/assets/logo.webp" alt="Fabi-SC ID" width="28" height="28">
</a>
Pill Shape
Add fabi-btn-pill class to any button:
<a href="https://id.fabi-sc.com/consent/YOUR_APP_ID" class="fabi-btn fabi-btn-light fabi-btn-pill">
<img src="https://id.fabi-sc.com/assets/logo.webp" alt="" width="24" height="24">
<span>Sign in with Fabi-SC ID</span>
</a>
CSS Styles
.fabi-btn {
display: inline-flex;
align-items: center;
gap: 12px;
padding: 10px 20px;
border-radius: 6px;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
font-size: 14px;
font-weight: 500;
text-decoration: none;
cursor: pointer;
transition: background-color 0.2s, box-shadow 0.2s;
}
.fabi-btn-light {
background: #ffffff;
color: #1a365d;
border: 1px solid #e2e8f0;
box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.fabi-btn-light:hover {
background: #f8fafc;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.fabi-btn-dark {
background: #1a365d;
color: #ffffff;
border: 1px solid #1a365d;
}
.fabi-btn-dark:hover {
background: #2c5282;
}
.fabi-btn-neutral {
background: #f1f5f9;
color: #1a365d;
border: 1px solid #e2e8f0;
}
.fabi-btn-neutral:hover {
background: #e2e8f0;
}
.fabi-btn-pill {
border-radius: 9999px;
}
.fabi-btn-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 6px;
background: #ffffff;
border: 1px solid #e2e8f0;
cursor: pointer;
transition: background-color 0.2s, box-shadow 0.2s;
}
.fabi-btn-icon:hover {
background: #f8fafc;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
Accepted Text Variants
You may use these call-to-action texts:
- “Sign in with Fabi-SC ID”
- “Sign up with Fabi-SC ID”
- “Continue with Fabi-SC ID”
- “Login with Fabi-SC ID”
Localization to match your application’s language is permitted.
Guidelines
Do
- Display the Fabi-SC ID button at least as prominently as other sign-in options
- Maintain the aspect ratio when scaling
- Use sufficient contrast against your background
- Keep the logo clearly visible
Don’t
- Stretch or distort the logo
- Change the logo colors (except white for dark backgrounds)
- Add effects (shadows, gradients) to the logo itself
- Place on busy backgrounds that reduce visibility
- Make the button smaller than other sign-in options
Links
English
Deutsch
Privacy Policy
Last updated: January 2026
This privacy policy explains how fabi-sc-id collects, uses, and protects your personal data in accordance with the General Data Protection Regulation (GDPR) and German data protection law.
1. Data Controller
The person responsible for data processing on this website is:
Fabian Schlüter
Schloß-Ricklinger Straße 22
31515 Wunstorf
Germany
Email: support@id.fabi-sc.com
Phone: +49 176 41612960 (not a support hotline)
This is a private, non-commercial project with no revenue generation.
2. Supervisory Authority
The competent supervisory authority for data protection matters is:
Der Landesbeauftragte für den Datenschutz Niedersachsen
Prinzenstraße 5
30159 Hannover
Germany
Website: https://www.lfd.niedersachsen.de
3. Data We Collect
3.1 Account Data (Required)
When you create an account, we collect:
| Data | Purpose | Legal Basis |
|---|---|---|
| Username | Account identification | Art. 6(1)(b) GDPR — Contract performance |
| Email address | Account verification, password recovery, security notifications | Art. 6(1)(b) GDPR — Contract performance |
| Password | Authentication (stored as secure hash) | Art. 6(1)(b) GDPR — Contract performance |
3.2 Profile Data (Optional)
You may voluntarily provide additional information:
- Display name
- First and last name
- Biography
- Date of birth (used solely for age-related features)
- Avatar image
- Timezone and language preferences
- Backup email address (for account recovery if you lose access to your primary email)
Legal basis: Art. 6(1)(a) GDPR — Your consent. You can modify or delete this data at any time.
3.3 Automatically Collected Data
To provide our services and protect your account, we automatically collect:
| Data | Purpose | Retention | Legal Basis |
|---|---|---|---|
| IP address | Security, abuse prevention, geolocation | Stored in login history for 90 days | Art. 6(1)(f) GDPR — Legitimate interest |
| Login timestamps | Security monitoring | 90 days | Art. 6(1)(f) GDPR — Legitimate interest |
| Approximate location (country/city) | Security monitoring, detecting suspicious logins | 90 days | Art. 6(1)(f) GDPR — Legitimate interest |
| Basic device information (User-Agent) | Security monitoring, session management | 90 days | Art. 6(1)(f) GDPR — Legitimate interest |
Note: Geolocation is determined using a local database on our servers. Your IP address is never transmitted to external services.
3.4 Two-Factor Authentication Data
If you enable two-factor authentication, we store:
- TOTP secrets (encrypted)
- Passkey/security key credentials (encrypted)
- Backup codes (stored as secure hashes)
Legal basis: Art. 6(1)(b) GDPR — Contract performance (security features you requested).
4. Third-Party Applications
When you connect third-party applications to your account:
| Data | Purpose | Legal Basis |
|---|---|---|
| Granted permissions (scopes) | Control what data applications can access | Art. 6(1)(a) GDPR — Your consent |
| Application-specific user ID | Privacy protection (prevents cross-app tracking) | Art. 6(1)(f) GDPR — Legitimate interest |
You can review and revoke application access at any time in your account settings.
5. Data Processing and Security
5.1 Encryption
- Passwords are hashed using a memory-hard algorithm resistant to brute-force attacks
- Sensitive profile data is encrypted at rest
- Two-factor authentication secrets are encrypted
- Backup codes are stored as one-way hashes
- All connections are TLS-encrypted (HTTPS)
5.2 No External Data Transfers
Your personal data is processed exclusively on our servers. We do not use:
- Third-party analytics services
- Tracking tools or cookies for advertising
- External authentication providers
- Cloud services that process your personal data
Email delivery and content moderation are handled entirely on our own infrastructure.
5.3 Geolocation Processing
We use IP-based geolocation to determine approximate location for security purposes. This processing occurs on our servers using a local database. Your IP address is never sent to external geolocation services.
5.4 Automated Content Moderation
We use limited automated checks when saving profile content to detect obvious policy violations. These checks may reject content but do not result in automatic account suspension. All account suspensions are performed manually by authorized administrators after review. Content that violates these guidelines may be removed. This processing occurs entirely on our infrastructure without sending data to external services. If you believe a decision was made in error, you may contact us.
5.5 Hosting
Our servers are operated by Hetzner Online GmbH, a German data center provider. A data processing agreement (DPA) is in place in accordance with Art. 28 GDPR.
5.6 Administrative Access
For moderation and abuse prevention purposes, authorized administrators may review user profile information. Administrators cannot modify user-provided content, but may remove individual profile fields or content that violates our policies. All administrative actions are logged for accountability.
5.7 Backups
For security and integrity purposes, encrypted backups of our databases may be created. Backups are protected with appropriate technical measures and are retained only as long as necessary.
6. Data Retention
| Data Type | Retention Period |
|---|---|
| Account data | Until you delete your account |
| Login history | 90 days |
| Session data | 7 days after expiration or logout |
| Password reset tokens | 1 hour |
| Email verification tokens | 24 hours |
| Unverified accounts | 7 days |
| Inactive accounts | Deleted after 1 year of inactivity (email warning sent 30 days before deletion) |
Suspended Accounts
If your account is suspended for policy violations, your email address and username may be retained to prevent re-registration and for legal compliance purposes. This data is restricted and not used for any other purpose.
7. Your Rights Under GDPR
You have the following rights regarding your personal data:
7.1 Right of Access (Art. 15 GDPR)
You can export all your personal data at any time from your account settings. The export includes your profile information, login history, connected applications, and more.
7.2 Right to Rectification (Art. 16 GDPR)
You can update or correct your personal data at any time in your account settings.
7.3 Right to Erasure (Art. 17 GDPR)
You can delete your account at any time. When you do:
- Connected applications are notified that you have disconnected
- All your personal data is permanently removed from our systems
7.4 Right to Restriction of Processing (Art. 18 GDPR)
You may request restriction of processing in certain circumstances. Contact us at the email address above.
7.5 Right to Data Portability (Art. 20 GDPR)
You can export your data in a machine-readable format (JSON) from your account settings.
7.6 Right to Object (Art. 21 GDPR)
You may object to processing based on legitimate interests. Contact us at the email address above.
7.7 Right to Lodge a Complaint (Art. 77 GDPR)
You have the right to lodge a complaint with the supervisory authority listed in Section 2.
8. Security Notifications
We automatically notify you via email when security-relevant events occur:
- Password changes
- Email address changes
- Two-factor authentication changes
- New passkey registrations
- Account deletion
- Inactivity warning (30 days before automatic deletion)
These notifications help you detect unauthorized access.
9. For Developers
If you register an application, we store:
- Application name and description
- Authorized domains and callback URLs
- Requested permission scopes
- Webhook configuration (if applicable)
- API keys (stored as secure hashes)
Legal basis: Art. 6(1)(b) GDPR — Contract performance.
10. Data Transfers to Third Countries
We do not transfer your personal data to countries outside the European Economic Area (EEA). However, when you grant access to a third-party application, that application becomes responsible for further processing. Please review their privacy policy before authorizing access.
11. Automated Decision-Making
We do not use automated decision-making or profiling that produces legal effects or similarly significant effects on you.
Limited automated content moderation is used to detect obvious policy violations. This does not affect your legal rights and you may contact us if you believe a decision was made in error.
12. Cookies and Local Storage
We use only essential cookies and local storage for:
- Session management (authentication)
- Security tokens
We do not use cookies for tracking, analytics, or advertising purposes.
13. Changes to This Policy
We may update this privacy policy to reflect changes in our practices or legal requirements. Significant changes will be communicated through appropriate channels.
14. Contact
For any questions about this privacy policy or your personal data, please contact:
Email: support@id.fabi-sc.com
Datenschutzerklärung
Letzte Aktualisierung: Januar 2026
Diese Datenschutzerklärung erläutert, wie fabi-sc-id Ihre personenbezogenen Daten gemäß der Datenschutz-Grundverordnung (DSGVO) und deutschem Datenschutzrecht erhebt, verwendet und schützt.
1. Verantwortlicher
Verantwortlich für die Datenverarbeitung auf dieser Website ist:
Fabian Schlüter
Schloß-Ricklinger Straße 22
31515 Wunstorf
Deutschland
E-Mail: support@id.fabi-sc.com
Telefon: +49 176 41612960 (keine Support-Hotline)
Dies ist ein privates, nicht-kommerzielles Projekt ohne Einnahmequellen.
2. Aufsichtsbehörde
Die zuständige Aufsichtsbehörde für Datenschutzangelegenheiten ist:
Der Landesbeauftragte für den Datenschutz Niedersachsen
Prinzenstraße 5
30159 Hannover
Deutschland
Website: https://www.lfd.niedersachsen.de
3. Erhobene Daten
3.1 Kontodaten (Pflicht)
Bei der Erstellung eines Kontos erheben wir:
| Daten | Zweck | Rechtsgrundlage |
|---|---|---|
| Benutzername | Kontoidentifikation | Art. 6 Abs. 1 lit. b DSGVO — Vertragserfüllung |
| E-Mail-Adresse | Kontoverifizierung, Passwortwiederherstellung, Sicherheitsbenachrichtigungen | Art. 6 Abs. 1 lit. b DSGVO — Vertragserfüllung |
| Passwort | Authentifizierung (als sicherer Hash gespeichert) | Art. 6 Abs. 1 lit. b DSGVO — Vertragserfüllung |
3.2 Profildaten (Freiwillig)
Sie können freiwillig zusätzliche Informationen angeben:
- Anzeigename
- Vor- und Nachname
- Biografie
- Geburtsdatum (wird ausschließlich für altersbezogene Funktionen verwendet)
- Profilbild
- Zeitzone und Spracheinstellungen
- Backup-E-Mail-Adresse (zur Kontowiederherstellung bei Verlust des Zugangs zu Ihrer primären E-Mail)
Rechtsgrundlage: Art. 6 Abs. 1 lit. a DSGVO — Ihre Einwilligung. Sie können diese Daten jederzeit ändern oder löschen.
3.3 Automatisch erhobene Daten
Zur Bereitstellung unserer Dienste und zum Schutz Ihres Kontos erheben wir automatisch:
| Daten | Zweck | Speicherdauer | Rechtsgrundlage |
|---|---|---|---|
| IP-Adresse | Sicherheit, Missbrauchsprävention, Geolokalisierung | Gespeichert in Login-Historie für 90 Tage | Art. 6 Abs. 1 lit. f DSGVO — Berechtigtes Interesse |
| Login-Zeitstempel | Sicherheitsüberwachung | 90 Tage | Art. 6 Abs. 1 lit. f DSGVO — Berechtigtes Interesse |
| Ungefährer Standort (Land/Stadt) | Sicherheitsüberwachung, Erkennung verdächtiger Logins | 90 Tage | Art. 6 Abs. 1 lit. f DSGVO — Berechtigtes Interesse |
| Grundlegende Geräteinformationen (User-Agent) | Sicherheitsüberwachung, Sitzungsverwaltung | 90 Tage | Art. 6 Abs. 1 lit. f DSGVO — Berechtigtes Interesse |
Hinweis: Die Geolokalisierung erfolgt über eine lokale Datenbank auf unseren Servern. Ihre IP-Adresse wird niemals an externe Dienste übermittelt.
3.4 Zwei-Faktor-Authentifizierungsdaten
Wenn Sie die Zwei-Faktor-Authentifizierung aktivieren, speichern wir:
- TOTP-Geheimnisse (verschlüsselt)
- Passkey-/Sicherheitsschlüssel-Anmeldedaten (verschlüsselt)
- Backup-Codes (als sichere Hashes gespeichert)
Rechtsgrundlage: Art. 6 Abs. 1 lit. b DSGVO — Vertragserfüllung (von Ihnen angeforderte Sicherheitsfunktionen).
4. Drittanbieter-Anwendungen
Wenn Sie Drittanbieter-Anwendungen mit Ihrem Konto verbinden:
| Daten | Zweck | Rechtsgrundlage |
|---|---|---|
| Erteilte Berechtigungen (Scopes) | Kontrolle über den Datenzugriff von Anwendungen | Art. 6 Abs. 1 lit. a DSGVO — Ihre Einwilligung |
| Anwendungsspezifische Benutzer-ID | Datenschutz (verhindert anwendungsübergreifendes Tracking) | Art. 6 Abs. 1 lit. f DSGVO — Berechtigtes Interesse |
Sie können den Anwendungszugriff jederzeit in Ihren Kontoeinstellungen überprüfen und widerrufen.
5. Datenverarbeitung und Sicherheit
5.1 Verschlüsselung
- Passwörter werden mit einem speicherintensiven Algorithmus gehasht, der gegen Brute-Force-Angriffe resistent ist
- Sensible Profildaten werden verschlüsselt gespeichert
- Zwei-Faktor-Authentifizierungsgeheimnisse werden verschlüsselt
- Backup-Codes werden als Einweg-Hashes gespeichert
- Alle Verbindungen sind TLS-verschlüsselt (HTTPS)
5.2 Keine externen Datenübertragungen
Ihre personenbezogenen Daten werden ausschließlich auf unseren Servern verarbeitet. Wir verwenden keine:
- Analyse-Dienste von Drittanbietern
- Tracking-Tools oder Cookies für Werbezwecke
- Externe Authentifizierungsanbieter
- Cloud-Dienste, die Ihre personenbezogenen Daten verarbeiten
E-Mail-Versand und Inhaltsmoderation werden vollständig auf unserer eigenen Infrastruktur durchgeführt.
5.3 Geolokalisierungsverarbeitung
Wir verwenden IP-basierte Geolokalisierung zur Bestimmung des ungefähren Standorts für Sicherheitszwecke. Diese Verarbeitung erfolgt lokal auf unseren Servern unter Verwendung einer lokalen Datenbank. Ihre IP-Adresse wird niemals an externe Geolokalisierungsdienste gesendet.
5.4 Automatisierte Inhaltsmoderation
Wir verwenden begrenzte automatisierte Prüfungen beim Speichern von Profilinhalten, um offensichtliche Richtlinienverstöße zu erkennen. Diese Prüfungen können Inhalte ablehnen, führen aber nicht zu automatischen Kontosperrungen. Alle Kontosperrungen werden manuell von autorisierten Administratoren nach Überprüfung durchgeführt. Inhalte, die gegen diese Richtlinien verstoßen, können entfernt werden. Diese Verarbeitung erfolgt vollständig auf unserer Infrastruktur, ohne Daten an externe Dienste zu senden. Wenn Sie glauben, dass eine Entscheidung fehlerhaft war, können Sie uns kontaktieren.
5.5 Hosting
Unsere Server werden bei der Hetzner Online GmbH, einem deutschen Rechenzentrumsanbieter, betrieben. Eine Vereinbarung zur Auftragsverarbeitung (AVV) gemäß Art. 28 DSGVO besteht.
5.6 Administrativer Zugriff
Zur Moderation und Missbrauchsprävention können autorisierte Administratoren Benutzerprofilinformationen einsehen. Administratoren können von Benutzern bereitgestellte Inhalte nicht ändern, aber einzelne Profilfelder oder Inhalte entfernen, die gegen unsere Richtlinien verstoßen. Alle administrativen Aktionen werden zur Nachvollziehbarkeit protokolliert.
5.7 Datensicherungen
Aus Sicherheits- und Integritätsgründen können verschlüsselte Sicherungskopien unserer Datenbanken erstellt werden. Sicherungskopien sind mit geeigneten technischen Maßnahmen geschützt und werden nur so lange aufbewahrt, wie erforderlich.
6. Speicherdauer
| Datentyp | Speicherdauer |
|---|---|
| Kontodaten | Bis zur Löschung Ihres Kontos |
| Login-Historie | 90 Tage |
| Sitzungsdaten | 7 Tage nach Ablauf oder Abmeldung |
| Passwort-Reset-Tokens | 1 Stunde |
| E-Mail-Verifizierungstoken | 24 Stunden |
| Unverifizierte Konten | 7 Tage |
| Inaktive Konten | Löschung nach 1 Jahr Inaktivität (E-Mail-Warnung 30 Tage vor Löschung) |
Gesperrte Konten
Wenn Ihr Konto wegen Richtlinienverstößen gesperrt wurde, können Ihre E-Mail-Adresse und Ihr Benutzername aufbewahrt werden, um eine erneute Registrierung zu verhindern und gesetzlichen Aufbewahrungspflichten nachzukommen. Diese Daten werden ausschließlich für diesen Zweck verwendet.
7. Ihre Rechte nach DSGVO
Sie haben folgende Rechte bezüglich Ihrer personenbezogenen Daten:
7.1 Auskunftsrecht (Art. 15 DSGVO)
Sie können jederzeit alle Ihre personenbezogenen Daten in Ihren Kontoeinstellungen exportieren. Der Export umfasst Ihre Profilinformationen, Login-Historie, verbundene Anwendungen und mehr.
7.2 Recht auf Berichtigung (Art. 16 DSGVO)
Sie können Ihre personenbezogenen Daten jederzeit in Ihren Kontoeinstellungen aktualisieren oder korrigieren.
7.3 Recht auf Löschung (Art. 17 DSGVO)
Sie können Ihr Konto jederzeit löschen. Dabei geschieht Folgendes:
- Verbundene Anwendungen werden benachrichtigt, dass Sie die Verbindung getrennt haben
- Alle Ihre personenbezogenen Daten werden dauerhaft aus unseren Systemen entfernt
7.4 Recht auf Einschränkung der Verarbeitung (Art. 18 DSGVO)
Sie können unter bestimmten Umständen die Einschränkung der Verarbeitung verlangen. Kontaktieren Sie uns unter der oben angegebenen E-Mail-Adresse.
7.5 Recht auf Datenübertragbarkeit (Art. 20 DSGVO)
Sie können Ihre Daten in einem maschinenlesbaren Format (JSON) aus Ihren Kontoeinstellungen exportieren.
7.6 Widerspruchsrecht (Art. 21 DSGVO)
Sie können der Verarbeitung aufgrund berechtigter Interessen widersprechen. Kontaktieren Sie uns unter der oben angegebenen E-Mail-Adresse.
7.7 Beschwerderecht (Art. 77 DSGVO)
Sie haben das Recht, eine Beschwerde bei der in Abschnitt 2 genannten Aufsichtsbehörde einzureichen.
8. Sicherheitsbenachrichtigungen
Wir benachrichtigen Sie automatisch per E-Mail, wenn sicherheitsrelevante Ereignisse auftreten:
- Passwortänderungen
- E-Mail-Adressänderungen
- Änderungen der Zwei-Faktor-Authentifizierung
- Neue Passkey-Registrierungen
- Kontolöschung
- Inaktivitätswarnung (30 Tage vor automatischer Löschung)
Diese Benachrichtigungen helfen Ihnen, unbefugten Zugriff zu erkennen.
9. Für Entwickler
Wenn Sie eine Anwendung registrieren, speichern wir:
- Anwendungsname und -beschreibung
- Autorisierte Domains und Callback-URLs
- Angeforderte Berechtigungen (Scopes)
- Webhook-Konfiguration (falls zutreffend)
- API-Schlüssel (als sichere Hashes gespeichert)
Rechtsgrundlage: Art. 6 Abs. 1 lit. b DSGVO — Vertragserfüllung.
10. Datenübermittlung in Drittländer
Wir selbst übermitteln Ihre personenbezogenen Daten nicht in Länder außerhalb des Europäischen Wirtschaftsraums (EWR). Wenn Sie jedoch einer Drittanbieter-Anwendung Zugriff auf Ihre Daten gewähren, liegt die Verantwortung für die weitere Verarbeitung bei dieser Anwendung. Bitte prüfen Sie deren Datenschutzerklärung vor der Autorisierung.
11. Automatisierte Entscheidungsfindung
Wir verwenden keine automatisierte Entscheidungsfindung oder Profiling, die rechtliche Wirkungen oder ähnlich erhebliche Auswirkungen auf Sie hat.
Begrenzte automatisierte Inhaltsmoderation wird zur Erkennung offensichtlicher Richtlinienverstöße eingesetzt. Dies beeinträchtigt nicht Ihre Rechte, und Sie können uns kontaktieren, wenn Sie glauben, dass eine Entscheidung fehlerhaft getroffen wurde.
12. Cookies und lokaler Speicher
Wir verwenden ausschließlich technisch notwendige Cookies und lokalen Speicher für:
- Sitzungsverwaltung (Authentifizierung)
- Sicherheitstoken
Wir verwenden keine Cookies für Tracking, Analyse oder Werbezwecke.
13. Änderungen dieser Datenschutzerklärung
Wir können diese Datenschutzerklärung aktualisieren, um Änderungen unserer Praktiken oder rechtlicher Anforderungen widerzuspiegeln. Wesentliche Änderungen werden über geeignete Kanäle kommuniziert.
14. Kontakt
Bei Fragen zu dieser Datenschutzerklärung oder Ihren personenbezogenen Daten kontaktieren Sie uns bitte:
E-Mail: support@id.fabi-sc.com
Terms of Service
These terms govern your use of fabi-sc-id, a private, non-commercial identity service.
Last updated: January 2026
1. About This Service
fabi-sc-id is a personal project operated by Fabian Schlüter. It provides identity and authentication services for connected applications. This is not a commercial service and is provided free of charge.
2. Acceptance of Terms
By creating an account or continuing to use this service, you agree to these terms. If you do not agree, please do not use the service.
3. Eligibility
You must be at least 16 years old to create an account. If you are under 16, you may not use this service. By creating an account, you confirm that you meet this age requirement.
4. Your Account
4.1 Account Creation
- You must provide accurate information when creating your account
- You may only create one account per person
- You are responsible for keeping your login credentials secure
- You must notify us immediately if you suspect unauthorized access to your account
4.2 Account Security
You are responsible for:
- Choosing a strong password
- Keeping your password confidential
- Securing your two-factor authentication methods
- All activities that occur under your account
We recommend enabling two-factor authentication to protect your account.
5. Acceptable Use
5.1 You Agree To
- Use the service in compliance with all applicable laws
- Respect other users and their privacy
- Provide accurate information in your profile
- Keep your account credentials secure
5.2 You Agree Not To
- Attempt to gain unauthorized access to the service or other accounts
- Use the service to harass, abuse, or harm others
- Upload malicious content, malware, or harmful code
- Create fake or misleading profiles
- Impersonate other people or organizations
- Use the service for illegal activities
- Attempt to circumvent security measures or rate limits
- Spam or abuse the service in any way
- Share your account with others
6. Content Guidelines
6.1 Profile Content
Your profile information (display name, biography, avatar) must not contain:
- Hate speech or discriminatory content
- Harassment or threats
- Sexually explicit content
- Content promoting violence or illegal activities
- Spam or advertising
- Misleading or fraudulent information
6.2 Content Moderation
We use limited automated checks when saving profile content to detect obvious policy violations. These checks may reject content but do not result in automatic account suspension. All account suspensions are performed manually by authorized administrators after review. Content that violates these guidelines may be removed. This processing occurs entirely on our infrastructure without sending data to external services. If you believe a decision was made in error, you may contact us.
7. Third-Party Applications
7.1 Connecting Applications
When you connect third-party applications to your account:
- You control what data each application can access
- You can revoke access at any time from your account settings
- We are not responsible for how third-party applications use your data
- Review each application’s privacy policy before connecting
7.2 For Developers
If you register an application:
- You are responsible for your application’s compliance with applicable laws
- You must provide accurate information about your application
- You must have a privacy policy if you collect user data
- You must not misuse the API or exceed reasonable usage limits
- We may suspend applications that violate these terms
8. Intellectual Property
8.1 Our Content
The fabi-sc-id service, including its design, code, and documentation, is protected by copyright and other intellectual property rights.
8.2 Your Content
You retain ownership of content you upload (such as your avatar). By uploading content, you grant us a license to store and display it as part of the service.
9. Privacy
Your privacy is important to us. Please review our Privacy Policy to understand how we collect, use, and protect your personal data.
10. Service Availability
10.1 No Guarantees
This is a personal project provided “as is” without any guarantees of:
- Availability or uptime
- Fitness for any particular purpose
- Error-free operation
- Data backup or recovery
10.2 Service Changes
We may:
- Modify or discontinue the service at any time
- Add, remove, or change features
- Update these terms with reasonable notice
This includes maintenance, security updates, or operational decisions.
11. Limitation of Liability
This service is provided without warranty of any kind. We are not liable for damages unless caused by intentional or grossly negligent conduct on our part. In cases of slight negligence, we are only liable for breaches of essential contractual obligations (cardinal obligations), the fulfillment of which enables the proper execution of the contract in the first place. In such cases, liability is limited to foreseeable, contract-typical damages. Liability for injury to life, body, or health remains unaffected.
We are not liable for:
- The actions or content of third-party applications
- Content provided by application developers (such as icons or background images)
- Damages resulting from circumstances beyond our reasonable control
This is a non-commercial, personal project. Please use it with this understanding.
12. Account Termination
12.1 By You
You can delete your account at any time from your account settings. Upon deletion:
- Your personal data will be permanently removed
- Connected applications will be notified
- This action cannot be undone
12.2 By Us
We may suspend or terminate your account if you:
- Violate these terms of service
- Violate our content guidelines
- Engage in harmful or abusive behavior
- Attempt to compromise the security of the service
If your account is suspended, you will be notified with the reason for suspension.
13. Dispute Resolution
These terms are governed by the laws of Germany. Any disputes shall be resolved in the courts of Germany. If you are a consumer, mandatory statutory provisions regarding jurisdiction remain unaffected.
14. Changes to These Terms
We may update these terms from time to time. Significant changes will be communicated at least 14 days in advance via email to your registered email address or through a notice after login. Continued use of the service after the notice period expires constitutes acceptance of the new terms.
15. Severability
If any provision of these terms is found to be unenforceable, the remaining provisions will continue in effect.
16. Contact
If you have questions about these terms, please contact us at:
Email: support@id.fabi-sc.com
17. Entire Agreement
These terms, together with our Privacy Policy, constitute the entire agreement between you and fabi-sc-id regarding your use of the service.
Nutzungsbedingungen
Diese Bedingungen regeln Ihre Nutzung von fabi-sc-id, einem privaten, nicht-kommerziellen Identitätsdienst.
Letzte Aktualisierung: Januar 2026
1. Über diesen Dienst
fabi-sc-id ist ein persönliches Projekt von Fabian Schlüter. Es bietet Identitäts- und Authentifizierungsdienste für verbundene Anwendungen. Dies ist kein kommerzieller Dienst und wird kostenlos angeboten.
2. Annahme der Bedingungen
Mit der Erstellung eines Kontos oder der fortgesetzten Nutzung dieses Dienstes stimmen Sie diesen Bedingungen zu. Wenn Sie nicht zustimmen, nutzen Sie den Dienst bitte nicht.
3. Nutzungsberechtigung
Sie müssen mindestens 16 Jahre alt sein, um ein Konto zu erstellen. Personen unter 16 Jahren dürfen diesen Dienst nicht nutzen. Mit der Erstellung eines Kontos bestätigen Sie, dass Sie diese Altersanforderung erfüllen.
4. Ihr Konto
4.1 Kontoerstellung
- Sie müssen bei der Kontoerstellung korrekte Angaben machen
- Sie dürfen nur ein Konto pro Person erstellen
- Sie sind für die Sicherheit Ihrer Zugangsdaten verantwortlich
- Sie müssen uns unverzüglich benachrichtigen, wenn Sie unbefugten Zugriff auf Ihr Konto vermuten
4.2 Kontosicherheit
Sie sind verantwortlich für:
- Die Wahl eines sicheren Passworts
- Die Geheimhaltung Ihres Passworts
- Die Sicherung Ihrer Zwei-Faktor-Authentifizierungsmethoden
- Alle Aktivitäten, die unter Ihrem Konto stattfinden
Wir empfehlen die Aktivierung der Zwei-Faktor-Authentifizierung zum Schutz Ihres Kontos.
5. Zulässige Nutzung
5.1 Sie verpflichten sich
- Den Dienst in Übereinstimmung mit allen geltenden Gesetzen zu nutzen
- Andere Nutzer und deren Privatsphäre zu respektieren
- Korrekte Informationen in Ihrem Profil anzugeben
- Ihre Zugangsdaten sicher aufzubewahren
5.2 Sie verpflichten sich, Folgendes zu unterlassen
- Versuche, unbefugten Zugriff auf den Dienst oder andere Konten zu erlangen
- Nutzung des Dienstes zur Belästigung, zum Missbrauch oder zur Schädigung anderer
- Hochladen von schädlichen Inhalten, Malware oder bösartigem Code
- Erstellung von gefälschten oder irreführenden Profilen
- Identitätsdiebstahl oder Nachahmung anderer Personen oder Organisationen
- Nutzung des Dienstes für illegale Aktivitäten
- Versuche, Sicherheitsmaßnahmen oder Rate-Limits zu umgehen
- Spam oder Missbrauch des Dienstes in jeglicher Form
- Weitergabe Ihres Kontos an andere
6. Inhaltsrichtlinien
6.1 Profilinhalte
Ihre Profilinformationen (Anzeigename, Biografie, Avatar) dürfen nicht enthalten:
- Hassrede oder diskriminierende Inhalte
- Belästigung oder Drohungen
- Sexuell explizite Inhalte
- Inhalte, die Gewalt oder illegale Aktivitäten fördern
- Spam oder Werbung
- Irreführende oder betrügerische Informationen
6.2 Inhaltsmoderation
Wir verwenden begrenzte automatisierte Prüfungen beim Speichern von Profilinhalten, um offensichtliche Richtlinienverstöße zu erkennen. Diese Prüfungen können Inhalte ablehnen, führen aber nicht zu automatischen Kontosperrungen. Alle Kontosperrungen werden manuell von autorisierten Administratoren nach Überprüfung durchgeführt. Inhalte, die gegen diese Richtlinien verstoßen, können entfernt werden. Diese Verarbeitung erfolgt vollständig auf unserer Infrastruktur, ohne Daten an externe Dienste zu senden. Wenn Sie glauben, dass eine Entscheidung fehlerhaft war, können Sie uns kontaktieren.
7. Drittanbieter-Anwendungen
7.1 Verbinden von Anwendungen
Wenn Sie Drittanbieter-Anwendungen mit Ihrem Konto verbinden:
- Sie kontrollieren, auf welche Daten jede Anwendung zugreifen kann
- Sie können den Zugriff jederzeit in Ihren Kontoeinstellungen widerrufen
- Wir sind nicht verantwortlich dafür, wie Drittanbieter-Anwendungen Ihre Daten verwenden
- Überprüfen Sie die Datenschutzerklärung jeder Anwendung vor dem Verbinden
7.2 Für Entwickler
Wenn Sie eine Anwendung registrieren:
- Sie sind für die Einhaltung geltender Gesetze durch Ihre Anwendung verantwortlich
- Sie müssen korrekte Informationen über Ihre Anwendung bereitstellen
- Sie müssen eine Datenschutzerklärung haben, wenn Sie Benutzerdaten erheben
- Sie dürfen die API nicht missbrauchen oder angemessene Nutzungslimits überschreiten
- Wir können Anwendungen sperren, die gegen diese Bedingungen verstoßen
8. Geistiges Eigentum
8.1 Unsere Inhalte
Der fabi-sc-id-Dienst, einschließlich seines Designs, Codes und seiner Dokumentation, ist durch Urheberrecht und andere Rechte am geistigen Eigentum geschützt.
8.2 Ihre Inhalte
Sie behalten das Eigentum an Inhalten, die Sie hochladen (wie Ihr Avatar). Mit dem Hochladen von Inhalten gewähren Sie uns eine Lizenz, diese im Rahmen des Dienstes zu speichern und anzuzeigen.
9. Datenschutz
Ihr Datenschutz ist uns wichtig. Bitte lesen Sie unsere Datenschutzerklärung, um zu verstehen, wie wir Ihre personenbezogenen Daten erheben, verwenden und schützen.
10. Verfügbarkeit des Dienstes
10.1 Keine Garantien
Dies ist ein persönliches Projekt, das ohne jegliche Garantie bereitgestellt wird, insbesondere ohne Garantie für:
- Verfügbarkeit oder Betriebszeit
- Eignung für einen bestimmten Zweck
- Fehlerfreien Betrieb
- Datensicherung oder -wiederherstellung
10.2 Änderungen am Dienst
Wir können:
- Den Dienst jederzeit ändern oder einstellen
- Funktionen hinzufügen, entfernen oder ändern
- Diese Bedingungen mit angemessener Vorankündigung aktualisieren
Dies schließt Wartungsarbeiten, Sicherheitsupdates oder betriebliche Entscheidungen ein.
11. Haftungsbeschränkung
Dieser Dienst wird ohne jegliche Gewährleistung bereitgestellt. Wir haften nicht für Schäden, es sei denn, diese wurden durch vorsätzliches oder grob fahrlässiges Verhalten unsererseits verursacht. Bei leichter Fahrlässigkeit haften wir nur bei Verletzung wesentlicher Vertragspflichten (Kardinalpflichten), deren Erfüllung die ordnungsgemäße Durchführung des Vertrages überhaupt erst ermöglicht. In diesem Fall ist die Haftung auf den vorhersehbaren, vertragstypischen Schaden begrenzt. Die Haftung für Schäden an Leben, Körper oder Gesundheit bleibt unberührt.
Wir haften nicht für:
- Die Handlungen oder Inhalte von Drittanbieter-Anwendungen
- Von Anwendungsentwicklern bereitgestellte Inhalte (wie Icons oder Hintergrundbilder)
- Schäden, die durch Umstände außerhalb unserer zumutbaren Kontrolle entstehen
Dies ist ein nicht-kommerzielles, persönliches Projekt. Bitte nutzen Sie es mit diesem Verständnis.
12. Kontokündigung
12.1 Durch Sie
Sie können Ihr Konto jederzeit in Ihren Kontoeinstellungen löschen. Bei der Löschung:
- Werden Ihre personenbezogenen Daten dauerhaft entfernt
- Werden verbundene Anwendungen benachrichtigt
- Kann diese Aktion nicht rückgängig gemacht werden
12.2 Durch Uns
Wir können Ihr Konto sperren oder kündigen, wenn Sie:
- Gegen diese Nutzungsbedingungen verstoßen
- Gegen unsere Inhaltsrichtlinien verstoßen
- Sich schädlich oder missbräuchlich verhalten
- Versuchen, die Sicherheit des Dienstes zu gefährden
Bei einer Sperrung Ihres Kontos werden Sie mit Angabe des Grundes benachrichtigt.
13. Streitbeilegung
Diese Bedingungen unterliegen deutschem Recht. Streitigkeiten werden vor deutschen Gerichten beigelegt. Für Verbraucher bleiben zwingende gesetzliche Bestimmungen zum Gerichtsstand unberührt.
14. Änderungen dieser Bedingungen
Wir können diese Bedingungen von Zeit zu Zeit aktualisieren. Wesentliche Änderungen werden mindestens 14 Tage im Voraus per E-Mail an Ihre registrierte E-Mail-Adresse oder durch einen Hinweis nach dem Login kommuniziert. Die fortgesetzte Nutzung des Dienstes nach Ablauf der Ankündigungsfrist gilt als Annahme der neuen Bedingungen.
15. Salvatorische Klausel
Sollte eine Bestimmung dieser Bedingungen für unwirksam befunden werden, bleiben die übrigen Bestimmungen in Kraft.
16. Kontakt
Bei Fragen zu diesen Bedingungen kontaktieren Sie uns bitte:
E-Mail: support@id.fabi-sc.com
17. Gesamte Vereinbarung
Diese Bedingungen bilden zusammen mit unserer Datenschutzerklärung die gesamte Vereinbarung zwischen Ihnen und fabi-sc-id bezüglich Ihrer Nutzung des Dienstes.
Imprint
Information according to § 5 DDG (German Digital Services Act)
Service Provider
Fabian Schlüter
Schloß-Ricklinger Straße 22
31515 Wunstorf
Germany
Contact
Phone: +49 176 41612960
Email: support@id.fabi-sc.com
Disclaimer
This is a private, non-commercial project.
Liability for Content
The contents of our pages have been created with the utmost care. However, we cannot guarantee the accuracy, completeness, and timeliness of the content.
Liability for Links
Our website contains links to external third-party websites over whose content we have no influence. Therefore, we cannot accept any liability for this external content. The respective provider or operator of the pages is always responsible for the content of the linked pages.
Copyright
The content and works created by the site operator on these pages are subject to German copyright law. Duplication, processing, distribution, or any form of commercialization of such material beyond the scope of the copyright law requires the prior written consent of its respective author or creator.
Impressum
Angaben gemäß § 5 DDG
Diensteanbieter
Fabian Schlüter
Schloß-Ricklinger Straße 22
31515 Wunstorf
Deutschland
Kontakt
Telefon: +49 176 41612960
E-Mail: support@id.fabi-sc.com
Haftungsausschluss
Dies ist ein privates, nicht-kommerzielles Projekt.
Haftung für Inhalte
Die Inhalte unserer Seiten wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte können wir jedoch keine Gewähr übernehmen.
Haftung für Links
Unsere Website enthält Links zu externen Websites Dritter, auf deren Inhalte wir keinen Einfluss haben. Deshalb können wir für diese fremden Inhalte auch keine Gewähr übernehmen. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber der Seiten verantwortlich.
Urheberrecht
Die durch den Seitenbetreiber erstellten Inhalte und Werke auf diesen Seiten unterliegen dem deutschen Urheberrecht. Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechts bedürfen der schriftlichen Zustimmung des jeweiligen Autors bzw. Erstellers.
Transparency Report
Last updated: January 2026
This document provides a comprehensive overview of how fabi-sc-id handles your data. We believe in transparency and want you to understand exactly what happens when you use our service.
Our Commitment
We built fabi-sc-id with privacy as a core principle, not an afterthought. Every decision we make considers the impact on your personal data. We collect only what is necessary, protect it with industry-standard security measures, and give you full control over your information.
Data We Collect
Account Information
When you create an account, we collect:
- Username — Your unique identifier on our platform
- Email address — Used for account verification, password recovery, and important security notifications
- Password — Stored using a modern, secure hashing algorithm designed to be resistant to brute-force attacks
Optional Profile Information
You may choose to provide additional information to enrich your profile:
- Display name
- First and last name
- Biography
- Date of birth — Only stored if explicitly provided and used solely for features that require age-related information
- Avatar image
- Timezone and language preferences
All optional fields remain under your control. You can add, modify, or remove them at any time.
Automatically Collected Information
To protect your account and provide our services, we automatically collect:
- Login history — Timestamps, approximate location (country/city), and basic device information for security monitoring
- Session data — Information about your active sessions to enable secure access across devices
We use IP-based geolocation to determine approximate location. This data is processed on our servers using a local database — your IP address is never sent to external geolocation services.
How We Protect Your Data
Encryption
Sensitive data is encrypted using strong encryption standards:
- Passwords — Hashed using a memory-hard algorithm specifically designed to resist password cracking attempts
- Security credentials — Two-factor authentication secrets and passkey data are encrypted at rest
- Backup codes — Stored as one-way hashes, making them impossible to recover but verifiable when you use them
Secure Infrastructure
- All connections are encrypted using HTTPS
- We enforce modern security headers to protect against common web vulnerabilities
- Session tokens are cryptographically secure and expire automatically
Access Control
- We implement rate limiting to prevent abuse and brute-force attacks
- Failed login attempts are monitored and may trigger additional security measures
- Administrative actions are logged for accountability
Third-Party Applications
Connecting Applications
When you connect a third-party application to your account, you control exactly what information that application can access. During the authorization process, you will see:
- Which permissions the application is requesting
- Which permissions are required versus optional
- A clear description of what each permission allows
Privacy-Preserving Design
We take extra steps to protect your privacy when you use third-party applications:
- Unique identifiers — Each application receives a different identifier for your account. This prevents applications from tracking you across different services.
- Scope-based access — Applications can only access the specific data you authorize
- Revocable consent — You can disconnect any application at any time from your account settings
Available Permissions
Applications may request access to:
| Permission | What It Includes |
|---|---|
| Basic authentication | Confirms your identity without sharing personal details |
| Profile information | Username, display name, and avatar |
| Email address | Your verified email address |
| Extended profile | Additional details like name and biography |
| Date of birth | Your birth date, if provided |
Webhook Notifications
Some applications may receive notifications when certain events occur (for example, when you disconnect the application). These notifications:
- Never contain your real account identifier
- Are signed cryptographically to prevent tampering
- Are validated to prevent abuse
Data Retention
We retain your data only as long as necessary:
| Data Type | Retention Period |
|---|---|
| Active account data | As long as your account exists |
| Login history | 90 days |
| Password reset requests | 1 hour (then deleted) |
| Email verification tokens | 24 hours (then deleted) |
| Inactive accounts | Deleted after 1 year of inactivity (email warning sent 30 days before deletion) |
| Unverified accounts | Deleted after 7 days |
Automatic Cleanup
We run regular cleanup processes to remove expired data. This includes:
- Expired sessions and tokens
- Old login history entries
- Abandoned account registrations
Your Rights and Controls
Access Your Data
You can export all your personal data at any time from your account settings. The export includes:
- Your profile information
- Login history
- Connected applications
- Passkey metadata
- Verified domains
- Applications you have created
Modify Your Data
You have full control to update or remove any information in your profile at any time.
Delete Your Account
You can delete your account at any time. When you do:
- Connected applications are notified that you have disconnected
- All your personal data is permanently removed from our systems
If your account was suspended for policy violations, your email address and username may be retained to prevent re-registration and for legal compliance purposes.
Disconnect Applications
You can review and revoke access for any connected application from your account settings. When you disconnect an application:
- The application is notified
- All tokens for that application are invalidated
- The application can no longer access your data
Security Notifications
We automatically notify you via email when important security events occur:
- Password changes
- Email address changes
- Two-factor authentication changes
- New passkey registrations
- Account deletion
- Inactivity warning (30 days before automatic deletion)
These notifications help you detect unauthorized access to your account.
Two-Factor Authentication
We offer multiple options for securing your account with two-factor authentication:
- Authenticator apps — Time-based one-time passwords using any standard authenticator app
- Security keys and passkeys — Hardware-based authentication for enhanced security
- Backup codes — One-time use recovery codes for emergency access
We strongly recommend enabling at least one form of two-factor authentication.
For Developers
If you are building an application that integrates with fabi-sc-id:
Application Data
When you register an application, we store:
- Application name and description
- Authorized domains and callback URLs
- Requested permission scopes
- Webhook configuration (if applicable)
API Access
- API keys are hashed before storage — we cannot recover your original key
- Keys can be revoked at any time
- Access is logged for security purposes
Content Guidelines
We employ limited automated content moderation to detect obvious abuse and policy violations. This processing occurs entirely on our infrastructure without sending data to external services.
External Services
We have designed our infrastructure to minimize external dependencies:
- Email delivery — Handled by our own mail servers
- Geolocation — Processed on our servers using a local database, without external API calls
- Content moderation — Performed on-premises using local processing
No user data is transmitted to external third-party services as part of our core service operation. We do not use third-party analytics, trackers, or advertising.
Changes to This Report
We may update this transparency report to reflect changes in our practices. Significant changes will be communicated through appropriate channels.
Questions
If you have questions about how we handle your data, please contact us at support@id.fabi-sc.com.
Transparenzbericht
Letzte Aktualisierung: Januar 2026
Dieses Dokument bietet einen umfassenden Überblick darüber, wie fabi-sc-id Ihre Daten verarbeitet. Wir glauben an Transparenz und möchten, dass Sie genau verstehen, was passiert, wenn Sie unseren Dienst nutzen.
Unser Engagement
Wir haben fabi-sc-id mit Datenschutz als Kernprinzip entwickelt, nicht als nachträglicher Gedanke. Jede Entscheidung, die wir treffen, berücksichtigt die Auswirkungen auf Ihre personenbezogenen Daten. Wir erheben nur das Notwendige, schützen es mit branchenüblichen Sicherheitsmaßnahmen und geben Ihnen die volle Kontrolle über Ihre Informationen.
Daten, die wir erheben
Kontoinformationen
Bei der Erstellung eines Kontos erheben wir:
- Benutzername — Ihre eindeutige Kennung auf unserer Plattform
- E-Mail-Adresse — Verwendet für Kontoverifizierung, Passwortwiederherstellung und wichtige Sicherheitsbenachrichtigungen
- Passwort — Gespeichert mit einem modernen, sicheren Hashing-Algorithmus, der gegen Brute-Force-Angriffe resistent ist
Optionale Profilinformationen
Sie können zusätzliche Informationen angeben, um Ihr Profil zu erweitern:
- Anzeigename
- Vor- und Nachname
- Biografie
- Geburtsdatum — Wird nur gespeichert, wenn explizit angegeben, und ausschließlich für Funktionen verwendet, die altersbezogene Informationen erfordern
- Profilbild
- Zeitzone und Spracheinstellungen
Alle optionalen Felder bleiben unter Ihrer Kontrolle. Sie können sie jederzeit hinzufügen, ändern oder entfernen.
Automatisch erhobene Informationen
Zum Schutz Ihres Kontos und zur Bereitstellung unserer Dienste erheben wir automatisch:
- Login-Historie — Zeitstempel, ungefährer Standort (Land/Stadt) und grundlegende Geräteinformationen zur Sicherheitsüberwachung
- Sitzungsdaten — Informationen über Ihre aktiven Sitzungen, um sicheren Zugriff über verschiedene Geräte zu ermöglichen
Wir verwenden IP-basierte Geolokalisierung zur Bestimmung des ungefähren Standorts. Diese Daten werden auf unseren Servern unter Verwendung einer lokalen Datenbank verarbeitet — Ihre IP-Adresse wird niemals an externe Geolokalisierungsdienste gesendet.
Wie wir Ihre Daten schützen
Verschlüsselung
Sensible Daten werden mit starken Verschlüsselungsstandards geschützt:
- Passwörter — Gehasht mit einem speicherintensiven Algorithmus, der speziell gegen Passwort-Cracking-Versuche entwickelt wurde
- Sicherheitszugangsdaten — Zwei-Faktor-Authentifizierungsgeheimnisse und Passkey-Daten werden verschlüsselt gespeichert
- Backup-Codes — Als Einweg-Hashes gespeichert, wodurch sie nicht wiederherstellbar, aber bei Verwendung verifizierbar sind
Sichere Infrastruktur
- Alle Verbindungen werden mit HTTPS verschlüsselt
- Wir setzen moderne Sicherheits-Header ein, um gegen gängige Web-Schwachstellen zu schützen
- Sitzungs-Tokens sind kryptografisch sicher und laufen automatisch ab
Zugriffskontrolle
- Wir implementieren Rate-Limiting zur Verhinderung von Missbrauch und Brute-Force-Angriffen
- Fehlgeschlagene Anmeldeversuche werden überwacht und können zusätzliche Sicherheitsmaßnahmen auslösen
- Administrative Aktionen werden zur Nachvollziehbarkeit protokolliert
Drittanbieter-Anwendungen
Verbinden von Anwendungen
Wenn Sie eine Drittanbieter-Anwendung mit Ihrem Konto verbinden, kontrollieren Sie genau, auf welche Informationen diese Anwendung zugreifen kann. Während des Autorisierungsprozesses sehen Sie:
- Welche Berechtigungen die Anwendung anfordert
- Welche Berechtigungen erforderlich bzw. optional sind
- Eine klare Beschreibung dessen, was jede Berechtigung erlaubt
Datenschutzfreundliches Design
Wir unternehmen zusätzliche Schritte zum Schutz Ihrer Privatsphäre bei der Nutzung von Drittanbieter-Anwendungen:
- Eindeutige Kennungen — Jede Anwendung erhält eine andere Kennung für Ihr Konto. Dies verhindert, dass Anwendungen Sie über verschiedene Dienste hinweg verfolgen können.
- Berechtigungsbasierter Zugriff — Anwendungen können nur auf die spezifischen Daten zugreifen, die Sie autorisieren
- Widerrufbare Einwilligung — Sie können jede Anwendung jederzeit in Ihren Kontoeinstellungen trennen
Verfügbare Berechtigungen
Anwendungen können Zugriff anfordern auf:
| Berechtigung | Was sie beinhaltet |
|---|---|
| Basis-Authentifizierung | Bestätigt Ihre Identität ohne Weitergabe persönlicher Details |
| Profilinformationen | Benutzername, Anzeigename und Profilbild |
| E-Mail-Adresse | Ihre verifizierte E-Mail-Adresse |
| Erweitertes Profil | Zusätzliche Details wie Name und Biografie |
| Geburtsdatum | Ihr Geburtsdatum, falls angegeben |
Webhook-Benachrichtigungen
Einige Anwendungen können Benachrichtigungen erhalten, wenn bestimmte Ereignisse eintreten (zum Beispiel, wenn Sie die Anwendung trennen). Diese Benachrichtigungen:
- Enthalten niemals Ihre echte Kontoidentifikation
- Sind kryptografisch signiert, um Manipulation zu verhindern
- Werden validiert, um Missbrauch zu verhindern
Datenaufbewahrung
Wir bewahren Ihre Daten nur so lange auf wie nötig:
| Datentyp | Aufbewahrungsfrist |
|---|---|
| Aktive Kontodaten | Solange Ihr Konto existiert |
| Login-Historie | 90 Tage |
| Passwort-Reset-Anfragen | 1 Stunde (dann gelöscht) |
| E-Mail-Verifizierungstoken | 24 Stunden (dann gelöscht) |
| Inaktive Konten | Löschung nach 1 Jahr Inaktivität (E-Mail-Warnung 30 Tage vor Löschung) |
| Unverifizierte Konten | Löschung nach 7 Tagen |
Automatische Bereinigung
Wir führen regelmäßige Bereinigungsprozesse durch, um abgelaufene Daten zu entfernen. Dies umfasst:
- Abgelaufene Sitzungen und Tokens
- Alte Login-Historie-Einträge
- Aufgegebene Kontoregistrierungen
Ihre Rechte und Kontrollen
Zugriff auf Ihre Daten
Sie können jederzeit alle Ihre personenbezogenen Daten aus Ihren Kontoeinstellungen exportieren. Der Export umfasst:
- Ihre Profilinformationen
- Login-Historie
- Verbundene Anwendungen
- Passkey-Metadaten
- Verifizierte Domains
- Von Ihnen erstellte Anwendungen
Ändern Ihrer Daten
Sie haben die volle Kontrolle, um Informationen in Ihrem Profil jederzeit zu aktualisieren oder zu entfernen.
Löschen Ihres Kontos
Sie können Ihr Konto jederzeit löschen. Dabei geschieht Folgendes:
- Verbundene Anwendungen werden benachrichtigt, dass Sie die Verbindung getrennt haben
- Alle Ihre personenbezogenen Daten werden dauerhaft aus unseren Systemen entfernt
Wenn Ihr Konto wegen Richtlinienverstößen gesperrt wurde, können Ihre E-Mail-Adresse und Ihr Benutzername aufbewahrt werden, um eine erneute Registrierung zu verhindern und gesetzlichen Aufbewahrungspflichten nachzukommen.
Anwendungen trennen
Sie können den Zugriff für jede verbundene Anwendung in Ihren Kontoeinstellungen überprüfen und widerrufen. Wenn Sie eine Anwendung trennen:
- Wird die Anwendung benachrichtigt
- Werden alle Tokens für diese Anwendung ungültig
- Kann die Anwendung nicht mehr auf Ihre Daten zugreifen
Sicherheitsbenachrichtigungen
Wir benachrichtigen Sie automatisch per E-Mail, wenn wichtige Sicherheitsereignisse auftreten:
- Passwortänderungen
- E-Mail-Adressänderungen
- Änderungen der Zwei-Faktor-Authentifizierung
- Neue Passkey-Registrierungen
- Kontolöschung
- Inaktivitätswarnung (30 Tage vor automatischer Löschung)
Diese Benachrichtigungen helfen Ihnen, unbefugten Zugriff auf Ihr Konto zu erkennen.
Zwei-Faktor-Authentifizierung
Wir bieten mehrere Optionen zur Absicherung Ihres Kontos mit Zwei-Faktor-Authentifizierung:
- Authenticator-Apps — Zeitbasierte Einmalpasswörter mit jeder Standard-Authenticator-App
- Sicherheitsschlüssel und Passkeys — Hardware-basierte Authentifizierung für erhöhte Sicherheit
- Backup-Codes — Einmal verwendbare Wiederherstellungscodes für den Notfallzugriff
Wir empfehlen dringend, mindestens eine Form der Zwei-Faktor-Authentifizierung zu aktivieren.
Für Entwickler
Wenn Sie eine Anwendung erstellen, die sich mit fabi-sc-id integriert:
Anwendungsdaten
Wenn Sie eine Anwendung registrieren, speichern wir:
- Anwendungsname und -beschreibung
- Autorisierte Domains und Callback-URLs
- Angeforderte Berechtigungen (Scopes)
- Webhook-Konfiguration (falls zutreffend)
API-Zugriff
- API-Schlüssel werden vor der Speicherung gehasht — wir können Ihren ursprünglichen Schlüssel nicht wiederherstellen
- Schlüssel können jederzeit widerrufen werden
- Der Zugriff wird zu Sicherheitszwecken protokolliert
Inhaltsrichtlinien
Wir verwenden begrenzte automatisierte Inhaltsmoderation zur Erkennung offensichtlicher Missbräuche und Richtlinienverstöße. Diese Verarbeitung erfolgt vollständig auf unserer Infrastruktur, ohne Daten an externe Dienste zu senden.
Externe Dienste
Wir haben unsere Infrastruktur so konzipiert, dass externe Abhängigkeiten minimiert werden:
- E-Mail-Versand — Wird von unseren eigenen Mailservern abgewickelt
- Geolokalisierung — Wird auf unseren Servern unter Verwendung einer lokalen Datenbank verarbeitet, ohne externe API-Aufrufe
- Inhaltsmoderation — Wird vor Ort mit lokaler Verarbeitung durchgeführt
Im Rahmen unseres Kerndienstes werden keine Benutzerdaten an externe Drittanbieter-Dienste übermittelt. Wir verwenden keine Drittanbieter-Analysetools, Tracker oder Werbung.
Änderungen an diesem Bericht
Wir können diesen Transparenzbericht aktualisieren, um Änderungen unserer Praktiken widerzuspiegeln. Wesentliche Änderungen werden über geeignete Kanäle kommuniziert.
Fragen
Bei Fragen zur Verarbeitung Ihrer Daten kontaktieren Sie uns bitte unter support@id.fabi-sc.com.