Skip to content

Commit 4dce790

Browse files
itsDNNSclaude
andcommitted
Recommend dedicated modem user in setup and install guide
- INSTALL.md: Add collapsible FRITZ!Box user creation guide in the First-Time Setup section with step-by-step instructions - setup.html / settings.html: Add hint text suggesting a dedicated user - i18n.py: Add modem_user_hint translation (EN/DE) A dedicated user with only "Access to FRITZ!Box settings" provides credential isolation without requiring full admin access. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 0cab15d commit 4dce790

File tree

4 files changed

+24
-2
lines changed

4 files changed

+24
-2
lines changed

INSTALL.md

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,29 @@ When you open DOCSight for the first time, a setup wizard guides you through the
212212

213213
### Step 1: Modem Connection
214214

215+
> **Recommended: Create a dedicated user**
216+
>
217+
> Instead of using your main admin account, create a separate user for DOCSight on your router. This way you can rotate or revoke its credentials independently.
218+
>
219+
> <details>
220+
> <summary>How to create a dedicated user on a FRITZ!Box</summary>
221+
>
222+
> 1. Open `http://fritz.box` and log in as admin
223+
> 2. Go to **System** > **FRITZ!Box Users** > **Add User**
224+
> 3. Set username (e.g. `docsight`) and a password
225+
> 4. Enable **only** "Access to FRITZ!Box settings" - disable everything else
226+
> 5. Click **Apply**
227+
>
228+
> Use this new username and password in DOCSight instead of your admin credentials.
229+
>
230+
> *Note: "Access to FRITZ!Box settings" is the only permission DOCSight needs. Unfortunately, FRITZ!Box does not offer a read-only option - this is an AVM limitation. DOCSight only reads data and never modifies any settings.*
231+
> </details>
232+
215233
| Field | What to enter |
216234
|---|---|
217235
| **Modem URL** | Your modem's web interface address (e.g. `http://192.168.178.1`) |
218-
| **Username** | Your modem login username |
219-
| **Password** | Your modem login password |
236+
| **Username** | Your dedicated DOCSight user (or admin username) |
237+
| **Password** | The corresponding password |
220238

221239
Click **Test Connection** to verify DOCSight can reach your router. If successful, continue to the next step.
222240

app/i18n.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@
104104
# Setup
105105
"initial_setup": "Initial Setup",
106106
"modem_connection": "Modem Connection",
107+
"modem_user_hint": "Tip: Create a dedicated user for DOCSight instead of using your main admin account.",
107108
"url": "URL",
108109
"username": "Username",
109110
"password": "Password",
@@ -264,6 +265,7 @@
264265

265266
"initial_setup": "Ersteinrichtung",
266267
"modem_connection": "Modem-Verbindung",
268+
"modem_user_hint": "Tipp: Lege einen eigenen Benutzer fuer DOCSight an, anstatt deinen Haupt-Admin zu verwenden.",
267269
"url": "URL",
268270
"username": "Benutzername",
269271
"password": "Passwort",

app/templates/settings.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ <h1>{{ t.settings }}</h1>
157157

158158
<div class="section">
159159
<h2>{{ t.modem_connection }}</h2>
160+
<p style="font-size:0.85em; color:var(--muted); margin-bottom:12px;">{{ t.modem_user_hint }}</p>
160161
<div class="form-grid">
161162
<div class="form-row full">
162163
<label for="modem_url">{{ t.url }}</label>

app/templates/setup.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ <h1>DOCSight</h1>
200200

201201
<div class="section">
202202
<h2><span class="step-num">1</span>{{ t.modem_connection }}</h2>
203+
<p style="font-size:0.85em; color:var(--muted); margin-bottom:12px;">{{ t.modem_user_hint }}</p>
203204
<div class="form-grid">
204205
<div class="form-row full">
205206
<label for="modem_url">{{ t.url }}</label>

0 commit comments

Comments
 (0)