opencode-account-manager 0.6.8 → 0.6.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -102,10 +102,12 @@ opencode-account-manager
102
102
  ocam list
103
103
 
104
104
  # Export accounts (encrypted by default)
105
- ocam export -o backup.ocam --password "your-password"
105
+ ocam export -o backup.ocam
106
+ # Or with env variable (non-interactive)
107
+ OCAM_EXPORT_PASSWORD="your-password" ocam export -o backup.ocam
106
108
 
107
- # Export as plain JSON (shows security warning)
108
- ocam export -o backup.json --plain
109
+ # Export as plain JSON (requires acknowledgment)
110
+ ocam export -o backup.json --plain --i-understand
109
111
 
110
112
  # Import accounts
111
113
  ocam import backup.ocam
@@ -126,7 +128,11 @@ ocam check --force
126
128
  ocam --help
127
129
  ```
128
130
 
129
- > **Security Note**: CLI export now defaults to encrypted format. Use `--password` to set encryption password, or `--plain` for unencrypted export (will show warning).
131
+ > **Security Notes**:
132
+ > - CLI export defaults to encrypted format (AES-256-GCM)
133
+ > - Password can be set via `OCAM_EXPORT_PASSWORD` env var or interactive prompt
134
+ > - `--password` flag has been removed for security (avoid exposing passwords in shell history)
135
+ > - Plain export requires both `--plain` and `--i-understand` flags
130
136
 
131
137
  **Health Check OAuth Config**
132
138
  Set OAuth client credentials via environment variables:
@@ -136,6 +142,11 @@ OCAM_OAUTH_CLIENT_ID=...
136
142
  OCAM_OAUTH_CLIENT_SECRET=...
137
143
  OCAM_OAUTH_TOKEN_ENDPOINT=https://oauth2.googleapis.com/token
138
144
  ```
145
+
146
+ **Security Configuration**
147
+ - **OAuth Endpoint Allowlist**: Only `https://oauth2.googleapis.com/token` is allowed by default
148
+ - **Custom Endpoints**: Set `OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT=true` to use non-standard endpoints
149
+ - **clientSecret Storage**: OCAM warns if `clientSecret` is stored in config file (use env var instead)
139
150
 
140
151
  ---
141
152
 
@@ -238,6 +249,27 @@ Warning: Failed to parse ocam-config.json - ...
238
249
 
239
250
  These warnings appear on CLI startup and help identify configuration issues.
240
251
 
252
+ ### Security Warnings
253
+
254
+ **clientSecret in Config File**
255
+ ```
256
+ Warning: OAuth clientSecret should not be stored in ocam-config.json.
257
+ Please use OCAM_OAUTH_CLIENT_SECRET environment variable instead.
258
+ ```
259
+
260
+ **Custom OAuth Endpoint Not Allowed**
261
+ ```
262
+ Warning: Custom OAuth token endpoint "..." is not in the allowlist.
263
+ Set OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT=true to allow custom endpoints.
264
+ ```
265
+
266
+ **Plain Text Export Warning**
267
+ ```
268
+ ⚠️ WARNING: Exporting in PLAIN TEXT format.
269
+ Your account credentials will be visible in the output file.
270
+ This is insecure and should only be used for testing/development.
271
+ ```
272
+
241
273
  ---
242
274
 
243
275
  ## Documentation
package/README_VI.md CHANGED
@@ -102,10 +102,12 @@ opencode-account-manager
102
102
  ocam list
103
103
 
104
104
  # Export accounts (mã hóa mặc định)
105
- ocam export -o backup.ocam --password "your-password"
105
+ ocam export -o backup.ocam
106
+ # Hoặc dùng biến môi trường (non-interactive)
107
+ OCAM_EXPORT_PASSWORD="your-password" ocam export -o backup.ocam
106
108
 
107
- # Export dạng plain JSON (hiển thị cảnh báo bảo mật)
108
- ocam export -o backup.json --plain
109
+ # Export dạng plain JSON (cần xác nhận)
110
+ ocam export -o backup.json --plain --i-understand
109
111
 
110
112
  # Import accounts
111
113
  ocam import backup.ocam
@@ -126,7 +128,11 @@ ocam check --force
126
128
  ocam --help
127
129
  ```
128
130
 
129
- > **Lưu ý bảo mật**: CLI export giờ mặc định mã hóa. Dùng `--password` để đặt mật khẩu, hoặc `--plain` để export không mã hóa (sẽ hiện cảnh báo).
131
+ > **Lưu ý bảo mật**:
132
+ > - CLI export mặc định dùng mã hóa (AES-256-GCM)
133
+ > - Mật khẩu có thể nhập qua biến môi trường `OCAM_EXPORT_PASSWORD` hoặc prompt tương tác
134
+ > - Flag `--password` đã bị xóa để bảo mật (tránh lộ mật khẩu trong shell history)
135
+ > - Export dạng plain cần cả hai flag `--plain` và `--i-understand`
130
136
 
131
137
  **Cấu hình OAuth cho Health Check**
132
138
  Thiết lập credentials qua biến môi trường:
@@ -136,6 +142,11 @@ OCAM_OAUTH_CLIENT_ID=...
136
142
  OCAM_OAUTH_CLIENT_SECRET=...
137
143
  OCAM_OAUTH_TOKEN_ENDPOINT=https://oauth2.googleapis.com/token
138
144
  ```
145
+
146
+ **Cấu hình bảo mật**
147
+ - **OAuth Endpoint Allowlist**: Chỉ cho phép `https://oauth2.googleapis.com/token` mặc định
148
+ - **Custom Endpoints**: Đặt `OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT=true` để dùng endpoint khác
149
+ - **clientSecret Storage**: OCAM cảnh báo nếu `clientSecret` lưu trong file config (nên dùng biến môi trường)
139
150
 
140
151
  ---
141
152
 
@@ -238,6 +249,27 @@ Warning: Failed to parse ocam-config.json - ...
238
249
 
239
250
  Các cảnh báo này xuất hiện khi khởi động CLI và giúp xác định vấn đề cấu hình.
240
251
 
252
+ ### Cảnh báo bảo mật
253
+
254
+ **clientSecret trong file Config**
255
+ ```
256
+ Warning: OAuth clientSecret should not be stored in ocam-config.json.
257
+ Please use OCAM_OAUTH_CLIENT_SECRET environment variable instead.
258
+ ```
259
+
260
+ **Custom OAuth Endpoint không được cho phép**
261
+ ```
262
+ Warning: Custom OAuth token endpoint "..." is not in the allowlist.
263
+ Set OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT=true to allow custom endpoints.
264
+ ```
265
+
266
+ **Cảnh báo Export Plain Text**
267
+ ```
268
+ ⚠️ WARNING: Exporting in PLAIN TEXT format.
269
+ Your account credentials will be visible in the output file.
270
+ This is insecure and should only be used for testing/development.
271
+ ```
272
+
241
273
  ---
242
274
 
243
275
  ## Tài liệu
package/dist/cli.js CHANGED
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  const fs_1 = __importDefault(require("fs"));
8
+ const readline_1 = __importDefault(require("readline"));
8
9
  const commander_1 = require("commander");
9
10
  const chalk_1 = __importDefault(require("chalk"));
10
11
  const accounts_1 = require("./core/accounts");
@@ -94,6 +95,16 @@ function checkAndPrintConfigWarnings() {
94
95
  if (appConfigError) {
95
96
  console.error(chalk_1.default.yellow(`Warning: Failed to parse ocam-config.json - ${appConfigError.message}`));
96
97
  }
98
+ // Check for clientSecret in config (security warning)
99
+ const clientSecretWarning = (0, config_store_1.checkOAuthClientSecretInConfig)();
100
+ if (clientSecretWarning) {
101
+ console.error(chalk_1.default.yellow(clientSecretWarning));
102
+ }
103
+ // Check for custom OAuth endpoint without allow flag
104
+ const customEndpointWarning = (0, config_store_1.checkCustomOAuthEndpointWarning)();
105
+ if (customEndpointWarning) {
106
+ console.error(chalk_1.default.yellow(customEndpointWarning));
107
+ }
97
108
  // Clear errors after reporting
98
109
  (0, opencode_config_1.clearLastOpencodeConfigError)();
99
110
  (0, config_store_1.clearLastConfigError)();
@@ -176,14 +187,31 @@ program
176
187
  process.stdout.write("\n");
177
188
  printHealthCheckResult(result);
178
189
  });
190
+ function promptPassword() {
191
+ return new Promise((resolve, reject) => {
192
+ const rl = readline_1.default.createInterface({
193
+ input: process.stdin,
194
+ output: process.stdout,
195
+ });
196
+ rl.question("Enter encryption password: ", (password) => {
197
+ rl.close();
198
+ if (!password || password.trim().length === 0) {
199
+ reject(new Error("Password cannot be empty"));
200
+ }
201
+ else {
202
+ resolve(password.trim());
203
+ }
204
+ });
205
+ });
206
+ }
179
207
  program
180
208
  .command("export")
181
209
  .description("Export accounts to a portable JSON file")
182
210
  .option("--plugin-path <path>", "Path to plugin accounts file")
183
211
  .option("-o, --out <path>", "Output file path")
184
- .option("-p, --password <pwd>", "Password for encryption (required unless --plain)")
185
- .option("--plain", "Export as plain JSON without encryption")
186
- .action((options) => {
212
+ .option("--plain", "Export as plain JSON without encryption (requires --i-understand)")
213
+ .option("--i-understand", "Acknowledge security risk of plain text export")
214
+ .action(async (options) => {
187
215
  checkAndPrintConfigWarnings();
188
216
  const pluginPath = (0, paths_1.getPluginAccountsPath)(options.pluginPath);
189
217
  const file = safeReadPluginFile(pluginPath);
@@ -192,9 +220,11 @@ program
192
220
  return;
193
221
  }
194
222
  const isPlain = options.plain === true;
195
- // Validate password requirement for encrypted export
196
- if (!isPlain && !options.password) {
197
- console.log(chalk_1.default.red("Error: Password is required for encrypted export. Use --password <pwd> or --plain for unencrypted export."));
223
+ const hasAcknowledgment = options.iUnderstand === true;
224
+ // Plain export requires explicit acknowledgment
225
+ if (isPlain && !hasAcknowledgment) {
226
+ console.log(chalk_1.default.red("Error: Plain text export requires --i-understand flag to acknowledge security risks."));
227
+ console.log(chalk_1.default.yellow("Warning: Plain text export will expose your account credentials in the output file."));
198
228
  process.exit(1);
199
229
  }
200
230
  // Determine output file path
@@ -205,15 +235,27 @@ program
205
235
  // Plain text export with warning
206
236
  console.log(chalk_1.default.yellow("\n⚠️ WARNING: Exporting in PLAIN TEXT format."));
207
237
  console.log(chalk_1.default.yellow(" Your account credentials will be visible in the output file."));
208
- console.log(chalk_1.default.yellow(" Consider using encrypted export for better security.\n"));
238
+ console.log(chalk_1.default.yellow(" This is insecure and should only be used for testing/development.\n"));
209
239
  const exportFile = (0, accounts_1.buildPortableExport)(file.accounts);
210
240
  (0, utils_1.writeJsonFile)(outPath, exportFile);
211
241
  console.log(chalk_1.default.green(`Exported ${file.accounts.length} accounts to ${outPath}`));
212
242
  }
213
243
  else {
244
+ // Encrypted export - get password from env or prompt
245
+ let password = process.env.OCAM_EXPORT_PASSWORD;
246
+ if (!password) {
247
+ try {
248
+ password = await promptPassword();
249
+ }
250
+ catch (err) {
251
+ console.log(chalk_1.default.red("Error: Password is required for encrypted export."));
252
+ console.log(chalk_1.default.gray("Tip: Set OCAM_EXPORT_PASSWORD environment variable to avoid interactive prompt."));
253
+ process.exit(1);
254
+ }
255
+ }
214
256
  // Encrypted export
215
257
  const portableData = (0, accounts_1.buildPortableExport)(file.accounts);
216
- const encryptedData = (0, crypto_1.encrypt)(portableData, options.password);
258
+ const encryptedData = (0, crypto_1.encrypt)(portableData, password);
217
259
  const encryptedExport = {
218
260
  version: 1,
219
261
  format: "encrypted",
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,16 @@ export declare function normalizeHealthKey(email: string): string;
55
55
  export declare function getHealthSettings(): Required<HealthSettings>;
56
56
  export declare function updateHealthSettings(partial: HealthSettings): void;
57
57
  export declare function getHealthOAuthConfig(): HealthOAuthConfig | undefined;
58
+ /**
59
+ * Check if clientSecret is stored in config file (security risk)
60
+ * Returns warning message if found, undefined otherwise
61
+ */
62
+ export declare function checkOAuthClientSecretInConfig(): string | undefined;
63
+ /**
64
+ * Check if custom OAuth endpoint is configured but not allowed
65
+ * Returns warning message if custom endpoint is blocked, undefined otherwise
66
+ */
67
+ export declare function checkCustomOAuthEndpointWarning(): string | undefined;
58
68
  export declare function updateHealthOAuthConfig(partial: HealthOAuthConfig): void;
59
69
  export declare function getHealthCache(): Record<string, AccountHealthResult>;
60
70
  export declare function getCachedHealth(email: string, ttlMs?: number): AccountHealthResult | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../../src/core/config-store.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACf,MAAM,SAAS,CAAC;AAOjB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5C,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAQD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,GAAG,IAAI,CAEvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAsCD;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAMD;;GAEG;AACH,wBAAgB,UAAU,IAAI,SAAS,CAetC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAWnD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAK3D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAK3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAG3C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C;AAMD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,cAAc,CAAC,CAQ5D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAQlE;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,GAAG,SAAS,CAGpE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAQxE;AAED,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAGpE;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,GACb,mBAAmB,GAAG,SAAS,CAQjC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAUpF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAY1D;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAOvC;AA2BD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,aAAa,EAAE,CAmDnD"}
1
+ {"version":3,"file":"config-store.d.ts","sourceRoot":"","sources":["../../src/core/config-store.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACf,MAAM,SAAS,CAAC;AAQjB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5C,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAQD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,WAAW,GAAG,IAAI,CAEvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAsCD;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAMD;;GAEG;AACH,wBAAgB,UAAU,IAAI,SAAS,CAetC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAWnD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAK3D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAK3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAG3C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C;AAMD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,iBAAiB,IAAI,QAAQ,CAAC,cAAc,CAAC,CAQ5D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAQlE;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,GAAG,SAAS,CAGpE;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,IAAI,MAAM,GAAG,SAAS,CAOnE;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,GAAG,SAAS,CAiBpE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAQxE;AAED,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAGpE;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,GACb,mBAAmB,GAAG,SAAS,CAQjC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAUpF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAY1D;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAOvC;AA2BD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,aAAa,EAAE,CAmDnD"}
@@ -47,6 +47,8 @@ exports.normalizeHealthKey = normalizeHealthKey;
47
47
  exports.getHealthSettings = getHealthSettings;
48
48
  exports.updateHealthSettings = updateHealthSettings;
49
49
  exports.getHealthOAuthConfig = getHealthOAuthConfig;
50
+ exports.checkOAuthClientSecretInConfig = checkOAuthClientSecretInConfig;
51
+ exports.checkCustomOAuthEndpointWarning = checkCustomOAuthEndpointWarning;
50
52
  exports.updateHealthOAuthConfig = updateHealthOAuthConfig;
51
53
  exports.getHealthCache = getHealthCache;
52
54
  exports.getCachedHealth = getCachedHealth;
@@ -58,6 +60,7 @@ const fs = __importStar(require("fs"));
58
60
  const path = __importStar(require("path"));
59
61
  const os = __importStar(require("os"));
60
62
  const utils_1 = require("./utils");
63
+ const health_oauth_1 = require("./health-oauth");
61
64
  // ============================================================================
62
65
  // Error State
63
66
  // ============================================================================
@@ -212,6 +215,37 @@ function getHealthOAuthConfig() {
212
215
  const config = readConfig();
213
216
  return config.health?.oauth;
214
217
  }
218
+ /**
219
+ * Check if clientSecret is stored in config file (security risk)
220
+ * Returns warning message if found, undefined otherwise
221
+ */
222
+ function checkOAuthClientSecretInConfig() {
223
+ const config = readConfig();
224
+ const oauthConfig = config.health?.oauth;
225
+ if (oauthConfig?.clientSecret) {
226
+ return "Warning: OAuth clientSecret should not be stored in ocam-config.json. Please use OCAM_OAUTH_CLIENT_SECRET environment variable instead.";
227
+ }
228
+ return undefined;
229
+ }
230
+ /**
231
+ * Check if custom OAuth endpoint is configured but not allowed
232
+ * Returns warning message if custom endpoint is blocked, undefined otherwise
233
+ */
234
+ function checkCustomOAuthEndpointWarning() {
235
+ const config = readConfig();
236
+ const oauthConfig = config.health?.oauth;
237
+ const envEndpoint = process.env.OCAM_OAUTH_TOKEN_ENDPOINT;
238
+ const configEndpoint = oauthConfig?.tokenEndpoint;
239
+ // Check env variable first (takes precedence)
240
+ if (envEndpoint) {
241
+ return (0, health_oauth_1.getCustomEndpointWarning)(envEndpoint);
242
+ }
243
+ // Then check config
244
+ if (configEndpoint) {
245
+ return (0, health_oauth_1.getCustomEndpointWarning)(configEndpoint);
246
+ }
247
+ return undefined;
248
+ }
215
249
  function updateHealthOAuthConfig(partial) {
216
250
  const config = readConfig();
217
251
  const health = config.health || {};
@@ -1 +1 @@
1
- {"version":3,"file":"config-store.js","sourceRoot":"","sources":["../../src/core/config-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-store.js","sourceRoot":"","sources":["../../src/core/config-store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,20 @@
1
1
  import { AccountHealthResult, HealthOAuthConfig } from "./types";
2
+ /**
3
+ * Check if custom endpoints are allowed via environment variable
4
+ */
5
+ export declare function isCustomEndpointAllowed(): boolean;
6
+ /**
7
+ * Validate if a token endpoint is in the allowlist
8
+ */
9
+ export declare function isTokenEndpointAllowed(endpoint: string): boolean;
10
+ /**
11
+ * Get the list of allowed token endpoints for display
12
+ */
13
+ export declare function getAllowedTokenEndpoints(): string[];
14
+ /**
15
+ * Get warning message if custom endpoint is configured but not allowed
16
+ */
17
+ export declare function getCustomEndpointWarning(configuredEndpoint?: string): string | undefined;
2
18
  export declare function isOAuthHealthCheckConfigured(): boolean;
3
19
  export declare function buildOAuthRequestBody(refreshToken: string, config: HealthOAuthConfig): string;
4
20
  export declare function checkAccountHealthOAuth(refreshToken: string): Promise<AccountHealthResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"health-oauth.d.ts","sourceRoot":"","sources":["../../src/core/health-oauth.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AA+BjB,wBAAgB,4BAA4B,IAAI,OAAO,CAEtD;AA4DD,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAQ7F;AAED,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,mBAAmB,CAAC,CAsF9B"}
1
+ {"version":3,"file":"health-oauth.d.ts","sourceRoot":"","sources":["../../src/core/health-oauth.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AA0BjB;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAGjD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAchE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAyBxF;AAgBD,wBAAgB,4BAA4B,IAAI,OAAO,CAEtD;AA4DD,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAQ7F;AAED,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,mBAAmB,CAAC,CA8F9B"}
@@ -3,6 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.isCustomEndpointAllowed = isCustomEndpointAllowed;
7
+ exports.isTokenEndpointAllowed = isTokenEndpointAllowed;
8
+ exports.getAllowedTokenEndpoints = getAllowedTokenEndpoints;
9
+ exports.getCustomEndpointWarning = getCustomEndpointWarning;
6
10
  exports.isOAuthHealthCheckConfigured = isOAuthHealthCheckConfigured;
7
11
  exports.buildOAuthRequestBody = buildOAuthRequestBody;
8
12
  exports.checkAccountHealthOAuth = checkAccountHealthOAuth;
@@ -10,10 +14,72 @@ const https_1 = __importDefault(require("https"));
10
14
  const config_store_1 = require("./config-store");
11
15
  const DEFAULT_TOKEN_ENDPOINT = "https://oauth2.googleapis.com/token";
12
16
  const REQUEST_TIMEOUT_MS = 10000;
17
+ // Allowlist for OAuth token endpoints (security)
18
+ const ALLOWED_TOKEN_ENDPOINTS = [
19
+ "https://oauth2.googleapis.com/token",
20
+ ];
21
+ // Environment variable to allow custom endpoints
22
+ const ALLOW_CUSTOM_ENDPOINT_ENV = "OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT";
23
+ /**
24
+ * Check if custom endpoints are allowed via environment variable
25
+ */
26
+ function isCustomEndpointAllowed() {
27
+ const envValue = process.env[ALLOW_CUSTOM_ENDPOINT_ENV];
28
+ return envValue === "true" || envValue === "1";
29
+ }
30
+ /**
31
+ * Validate if a token endpoint is in the allowlist
32
+ */
33
+ function isTokenEndpointAllowed(endpoint) {
34
+ // Always allow default endpoint
35
+ if (endpoint === DEFAULT_TOKEN_ENDPOINT) {
36
+ return true;
37
+ }
38
+ // Check allowlist
39
+ if (ALLOWED_TOKEN_ENDPOINTS.includes(endpoint)) {
40
+ return true;
41
+ }
42
+ // Check if custom endpoints are allowed via env
43
+ if (isCustomEndpointAllowed()) {
44
+ return true;
45
+ }
46
+ return false;
47
+ }
48
+ /**
49
+ * Get the list of allowed token endpoints for display
50
+ */
51
+ function getAllowedTokenEndpoints() {
52
+ return [...ALLOWED_TOKEN_ENDPOINTS];
53
+ }
54
+ /**
55
+ * Get warning message if custom endpoint is configured but not allowed
56
+ */
57
+ function getCustomEndpointWarning(configuredEndpoint) {
58
+ if (!configuredEndpoint) {
59
+ return undefined;
60
+ }
61
+ const endpoint = configuredEndpoint.trim();
62
+ // Skip if it's the default endpoint
63
+ if (endpoint === DEFAULT_TOKEN_ENDPOINT) {
64
+ return undefined;
65
+ }
66
+ // Skip if it's in the allowlist
67
+ if (ALLOWED_TOKEN_ENDPOINTS.includes(endpoint)) {
68
+ return undefined;
69
+ }
70
+ // Check if custom endpoints are allowed
71
+ if (isCustomEndpointAllowed()) {
72
+ return undefined;
73
+ }
74
+ return `Warning: Custom OAuth token endpoint "${endpoint}" is not in the allowlist. ` +
75
+ `Set ${ALLOW_CUSTOM_ENDPOINT_ENV}=true to allow custom endpoints. ` +
76
+ `Allowed endpoints: ${ALLOWED_TOKEN_ENDPOINTS.join(", ")}`;
77
+ }
13
78
  function resolveOAuthConfig() {
14
79
  const config = (0, config_store_1.getHealthOAuthConfig)() || {};
15
80
  const clientId = process.env.OCAM_OAUTH_CLIENT_ID || config.clientId;
16
- const clientSecret = process.env.OCAM_OAUTH_CLIENT_SECRET || config.clientSecret;
81
+ // SECURITY: Only read clientSecret from environment variable, never from config file
82
+ const clientSecret = process.env.OCAM_OAUTH_CLIENT_SECRET;
17
83
  const tokenEndpoint = process.env.OCAM_OAUTH_TOKEN_ENDPOINT || config.tokenEndpoint;
18
84
  if (!clientId || !clientSecret)
19
85
  return undefined;
@@ -101,6 +167,13 @@ async function checkAccountHealthOAuth(refreshToken) {
101
167
  message: "Token endpoint must use HTTPS protocol",
102
168
  });
103
169
  }
170
+ // Enforce allowlist for token endpoints
171
+ if (!isTokenEndpointAllowed(tokenEndpoint)) {
172
+ return buildResult("not_configured", "oauth", {
173
+ message: `Token endpoint "${tokenEndpoint}" is not in the allowlist. ` +
174
+ `Set ${ALLOW_CUSTOM_ENDPOINT_ENV}=true to allow custom endpoints.`,
175
+ });
176
+ }
104
177
  const body = buildOAuthRequestBody(refreshToken, config);
105
178
  return new Promise((resolve) => {
106
179
  const request = https_1.default.request(tokenEndpoint, {
@@ -1 +1 @@
1
- {"version":3,"file":"health-oauth.js","sourceRoot":"","sources":["../../src/core/health-oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health-oauth.js","sourceRoot":"","sources":["../../src/core/health-oauth.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/tui/Dashboard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAoCnD,UAAU,cAAc;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAaD,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,EAAE,cAAc,qBA0nBvD"}
1
+ {"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/tui/Dashboard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAoCnD,UAAU,cAAc;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAaD,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,EAAE,cAAc,qBAsoBvD"}
@@ -98,6 +98,16 @@ function Dashboard({ pluginPath }) {
98
98
  else {
99
99
  setConfigError(null);
100
100
  }
101
+ // Check for clientSecret in config (security warning)
102
+ const clientSecretWarning = (0, config_store_1.checkOAuthClientSecretInConfig)();
103
+ if (clientSecretWarning) {
104
+ setConfigError(clientSecretWarning);
105
+ }
106
+ // Check for custom OAuth endpoint without allow flag
107
+ const customEndpointWarning = (0, config_store_1.checkCustomOAuthEndpointWarning)();
108
+ if (customEndpointWarning) {
109
+ setConfigError(customEndpointWarning);
110
+ }
101
111
  };
102
112
  const loadAccounts = () => {
103
113
  const file = safeReadPluginFile(resolvedPath);
@@ -1 +1 @@
1
- {"version":3,"file":"Dashboard.js","sourceRoot":"","sources":["../../src/tui/Dashboard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dashboard.js","sourceRoot":"","sources":["../../src/tui/Dashboard.tsx"],"names":[],"mappings":"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"}
package/docs/ROADMAP.md CHANGED
@@ -75,10 +75,15 @@
75
75
 
76
76
  ### v0.6.5 - Security & CLI Improvements (Current)
77
77
  - [x] **Encrypted Export Default** - CLI export now defaults to encrypted format
78
- - [x] **Password Requirement** - `--password` required unless using `--plain`
78
+ - [x] **Password Prompt** - Interactive password prompt or use `OCAM_EXPORT_PASSWORD` env var
79
+ - [x] **Removed --password Flag** - No longer accepts `--password` on command line (security)
80
+ - [x] **Plain Export Acknowledgment** - Plain export requires both `--plain` and `--i-understand` flags
79
81
  - [x] **Plaintext Warning** - Security warning shown when exporting without encryption
80
82
  - [x] **Config Parse Warnings** - CLI warns when opencode.json or ocam-config.json fails to parse
81
83
  - [x] **ExportedFrom Field** - Portable export now includes `exportedFrom: "opencode-account-manager"`
84
+ - [x] **OAuth Endpoint Allowlist** - Only allows `https://oauth2.googleapis.com/token` by default
85
+ - [x] **Custom Endpoint Override** - Set `OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT=true` to allow custom endpoints
86
+ - [x] **clientSecret Warning** - Warns when clientSecret is stored in config file (should use env var)
82
87
 
83
88
  ### v0.6.4 - Account Health Check
84
89
  - [x] **Health Check Cache** - TTL + cooldown stored in ocam-config.json
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-account-manager",
3
- "version": "0.6.8",
3
+ "version": "0.6.9",
4
4
  "description": "TUI Dashboard for OpenCode - View providers, MCP servers, and plugin accounts",
5
5
  "main": "dist/cli.js",
6
6
  "bin": {
package/src/cli.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from "fs";
3
3
  import path from "path";
4
+ import readline from "readline";
4
5
  import { Command } from "commander";
5
6
  import chalk from "chalk";
6
7
  import {
@@ -20,7 +21,7 @@ import { checkAccountsHealth, HealthCheckResult } from "./core/health-orchestrat
20
21
  import { AccountHealthStatus, EncryptedExportFile } from "./core/types";
21
22
  import { version } from "../package.json";
22
23
  import { getLastOpencodeConfigError, clearLastOpencodeConfigError } from "./core/opencode-config";
23
- import { getLastConfigError, clearLastConfigError } from "./core/config-store";
24
+ import { getLastConfigError, clearLastConfigError, checkOAuthClientSecretInConfig, checkCustomOAuthEndpointWarning } from "./core/config-store";
24
25
  import { encrypt } from "./core/crypto";
25
26
 
26
27
  function formatTimestamp(timestamp?: number): string {
@@ -114,6 +115,18 @@ function checkAndPrintConfigWarnings(): void {
114
115
  console.error(chalk.yellow(`Warning: Failed to parse ocam-config.json - ${appConfigError.message}`));
115
116
  }
116
117
 
118
+ // Check for clientSecret in config (security warning)
119
+ const clientSecretWarning = checkOAuthClientSecretInConfig();
120
+ if (clientSecretWarning) {
121
+ console.error(chalk.yellow(clientSecretWarning));
122
+ }
123
+
124
+ // Check for custom OAuth endpoint without allow flag
125
+ const customEndpointWarning = checkCustomOAuthEndpointWarning();
126
+ if (customEndpointWarning) {
127
+ console.error(chalk.yellow(customEndpointWarning));
128
+ }
129
+
117
130
  // Clear errors after reporting
118
131
  clearLastOpencodeConfigError();
119
132
  clearLastConfigError();
@@ -209,14 +222,32 @@ program
209
222
  printHealthCheckResult(result);
210
223
  });
211
224
 
225
+ function promptPassword(): Promise<string> {
226
+ return new Promise((resolve, reject) => {
227
+ const rl = readline.createInterface({
228
+ input: process.stdin,
229
+ output: process.stdout,
230
+ });
231
+
232
+ rl.question("Enter encryption password: ", (password) => {
233
+ rl.close();
234
+ if (!password || password.trim().length === 0) {
235
+ reject(new Error("Password cannot be empty"));
236
+ } else {
237
+ resolve(password.trim());
238
+ }
239
+ });
240
+ });
241
+ }
242
+
212
243
  program
213
244
  .command("export")
214
245
  .description("Export accounts to a portable JSON file")
215
246
  .option("--plugin-path <path>", "Path to plugin accounts file")
216
247
  .option("-o, --out <path>", "Output file path")
217
- .option("-p, --password <pwd>", "Password for encryption (required unless --plain)")
218
- .option("--plain", "Export as plain JSON without encryption")
219
- .action((options) => {
248
+ .option("--plain", "Export as plain JSON without encryption (requires --i-understand)")
249
+ .option("--i-understand", "Acknowledge security risk of plain text export")
250
+ .action(async (options) => {
220
251
  checkAndPrintConfigWarnings();
221
252
  const pluginPath = getPluginAccountsPath(options.pluginPath);
222
253
  const file = safeReadPluginFile(pluginPath);
@@ -227,10 +258,12 @@ program
227
258
  }
228
259
 
229
260
  const isPlain = options.plain === true;
261
+ const hasAcknowledgment = options.iUnderstand === true;
230
262
 
231
- // Validate password requirement for encrypted export
232
- if (!isPlain && !options.password) {
233
- console.log(chalk.red("Error: Password is required for encrypted export. Use --password <pwd> or --plain for unencrypted export."));
263
+ // Plain export requires explicit acknowledgment
264
+ if (isPlain && !hasAcknowledgment) {
265
+ console.log(chalk.red("Error: Plain text export requires --i-understand flag to acknowledge security risks."));
266
+ console.log(chalk.yellow("Warning: Plain text export will expose your account credentials in the output file."));
234
267
  process.exit(1);
235
268
  }
236
269
 
@@ -243,15 +276,28 @@ program
243
276
  // Plain text export with warning
244
277
  console.log(chalk.yellow("\n⚠️ WARNING: Exporting in PLAIN TEXT format."));
245
278
  console.log(chalk.yellow(" Your account credentials will be visible in the output file."));
246
- console.log(chalk.yellow(" Consider using encrypted export for better security.\n"));
279
+ console.log(chalk.yellow(" This is insecure and should only be used for testing/development.\n"));
247
280
 
248
281
  const exportFile = buildPortableExport(file.accounts);
249
282
  writeJsonFile(outPath, exportFile);
250
283
  console.log(chalk.green(`Exported ${file.accounts.length} accounts to ${outPath}`));
251
284
  } else {
285
+ // Encrypted export - get password from env or prompt
286
+ let password = process.env.OCAM_EXPORT_PASSWORD;
287
+
288
+ if (!password) {
289
+ try {
290
+ password = await promptPassword();
291
+ } catch (err) {
292
+ console.log(chalk.red("Error: Password is required for encrypted export."));
293
+ console.log(chalk.gray("Tip: Set OCAM_EXPORT_PASSWORD environment variable to avoid interactive prompt."));
294
+ process.exit(1);
295
+ }
296
+ }
297
+
252
298
  // Encrypted export
253
299
  const portableData = buildPortableExport(file.accounts);
254
- const encryptedData = encrypt(portableData, options.password);
300
+ const encryptedData = encrypt(portableData, password);
255
301
 
256
302
  const encryptedExport: EncryptedExportFile = {
257
303
  version: 1,
@@ -8,6 +8,7 @@ import {
8
8
  HealthSettings,
9
9
  } from "./types";
10
10
  import { toLowerTrim } from "./utils";
11
+ import { getCustomEndpointWarning } from "./health-oauth";
11
12
 
12
13
  // ============================================================================
13
14
  // Types
@@ -207,6 +208,42 @@ export function getHealthOAuthConfig(): HealthOAuthConfig | undefined {
207
208
  return config.health?.oauth;
208
209
  }
209
210
 
211
+ /**
212
+ * Check if clientSecret is stored in config file (security risk)
213
+ * Returns warning message if found, undefined otherwise
214
+ */
215
+ export function checkOAuthClientSecretInConfig(): string | undefined {
216
+ const config = readConfig();
217
+ const oauthConfig = config.health?.oauth;
218
+ if (oauthConfig?.clientSecret) {
219
+ return "Warning: OAuth clientSecret should not be stored in ocam-config.json. Please use OCAM_OAUTH_CLIENT_SECRET environment variable instead.";
220
+ }
221
+ return undefined;
222
+ }
223
+
224
+ /**
225
+ * Check if custom OAuth endpoint is configured but not allowed
226
+ * Returns warning message if custom endpoint is blocked, undefined otherwise
227
+ */
228
+ export function checkCustomOAuthEndpointWarning(): string | undefined {
229
+ const config = readConfig();
230
+ const oauthConfig = config.health?.oauth;
231
+ const envEndpoint = process.env.OCAM_OAUTH_TOKEN_ENDPOINT;
232
+ const configEndpoint = oauthConfig?.tokenEndpoint;
233
+
234
+ // Check env variable first (takes precedence)
235
+ if (envEndpoint) {
236
+ return getCustomEndpointWarning(envEndpoint);
237
+ }
238
+
239
+ // Then check config
240
+ if (configEndpoint) {
241
+ return getCustomEndpointWarning(configEndpoint);
242
+ }
243
+
244
+ return undefined;
245
+ }
246
+
210
247
  export function updateHealthOAuthConfig(partial: HealthOAuthConfig): void {
211
248
  const config = readConfig();
212
249
  const health = config.health || {};
@@ -9,6 +9,14 @@ import { getHealthOAuthConfig } from "./config-store";
9
9
  const DEFAULT_TOKEN_ENDPOINT = "https://oauth2.googleapis.com/token";
10
10
  const REQUEST_TIMEOUT_MS = 10000;
11
11
 
12
+ // Allowlist for OAuth token endpoints (security)
13
+ const ALLOWED_TOKEN_ENDPOINTS = [
14
+ "https://oauth2.googleapis.com/token",
15
+ ];
16
+
17
+ // Environment variable to allow custom endpoints
18
+ const ALLOW_CUSTOM_ENDPOINT_ENV = "OCAM_OAUTH_ALLOW_CUSTOM_ENDPOINT";
19
+
12
20
  interface OAuthErrorResponse {
13
21
  error?: string;
14
22
  error_description?: string;
@@ -21,10 +29,75 @@ interface OAuthSuccessResponse {
21
29
  token_type?: string;
22
30
  }
23
31
 
32
+ /**
33
+ * Check if custom endpoints are allowed via environment variable
34
+ */
35
+ export function isCustomEndpointAllowed(): boolean {
36
+ const envValue = process.env[ALLOW_CUSTOM_ENDPOINT_ENV];
37
+ return envValue === "true" || envValue === "1";
38
+ }
39
+
40
+ /**
41
+ * Validate if a token endpoint is in the allowlist
42
+ */
43
+ export function isTokenEndpointAllowed(endpoint: string): boolean {
44
+ // Always allow default endpoint
45
+ if (endpoint === DEFAULT_TOKEN_ENDPOINT) {
46
+ return true;
47
+ }
48
+ // Check allowlist
49
+ if (ALLOWED_TOKEN_ENDPOINTS.includes(endpoint)) {
50
+ return true;
51
+ }
52
+ // Check if custom endpoints are allowed via env
53
+ if (isCustomEndpointAllowed()) {
54
+ return true;
55
+ }
56
+ return false;
57
+ }
58
+
59
+ /**
60
+ * Get the list of allowed token endpoints for display
61
+ */
62
+ export function getAllowedTokenEndpoints(): string[] {
63
+ return [...ALLOWED_TOKEN_ENDPOINTS];
64
+ }
65
+
66
+ /**
67
+ * Get warning message if custom endpoint is configured but not allowed
68
+ */
69
+ export function getCustomEndpointWarning(configuredEndpoint?: string): string | undefined {
70
+ if (!configuredEndpoint) {
71
+ return undefined;
72
+ }
73
+
74
+ const endpoint = configuredEndpoint.trim();
75
+
76
+ // Skip if it's the default endpoint
77
+ if (endpoint === DEFAULT_TOKEN_ENDPOINT) {
78
+ return undefined;
79
+ }
80
+
81
+ // Skip if it's in the allowlist
82
+ if (ALLOWED_TOKEN_ENDPOINTS.includes(endpoint)) {
83
+ return undefined;
84
+ }
85
+
86
+ // Check if custom endpoints are allowed
87
+ if (isCustomEndpointAllowed()) {
88
+ return undefined;
89
+ }
90
+
91
+ return `Warning: Custom OAuth token endpoint "${endpoint}" is not in the allowlist. ` +
92
+ `Set ${ALLOW_CUSTOM_ENDPOINT_ENV}=true to allow custom endpoints. ` +
93
+ `Allowed endpoints: ${ALLOWED_TOKEN_ENDPOINTS.join(", ")}`;
94
+ }
95
+
24
96
  function resolveOAuthConfig(): HealthOAuthConfig | undefined {
25
97
  const config = getHealthOAuthConfig() || {};
26
98
  const clientId = process.env.OCAM_OAUTH_CLIENT_ID || config.clientId;
27
- const clientSecret = process.env.OCAM_OAUTH_CLIENT_SECRET || config.clientSecret;
99
+ // SECURITY: Only read clientSecret from environment variable, never from config file
100
+ const clientSecret = process.env.OCAM_OAUTH_CLIENT_SECRET;
28
101
  const tokenEndpoint = process.env.OCAM_OAUTH_TOKEN_ENDPOINT || config.tokenEndpoint;
29
102
  if (!clientId || !clientSecret) return undefined;
30
103
  return {
@@ -130,6 +203,14 @@ export async function checkAccountHealthOAuth(
130
203
  message: "Token endpoint must use HTTPS protocol",
131
204
  });
132
205
  }
206
+
207
+ // Enforce allowlist for token endpoints
208
+ if (!isTokenEndpointAllowed(tokenEndpoint)) {
209
+ return buildResult("not_configured", "oauth", {
210
+ message: `Token endpoint "${tokenEndpoint}" is not in the allowlist. ` +
211
+ `Set ${ALLOW_CUSTOM_ENDPOINT_ENV}=true to allow custom endpoints.`,
212
+ });
213
+ }
133
214
  const body = buildOAuthRequestBody(refreshToken, config);
134
215
 
135
216
  return new Promise<AccountHealthResult>((resolve) => {
@@ -30,7 +30,7 @@ import {
30
30
  getLastOpencodeConfigError,
31
31
  clearLastOpencodeConfigError,
32
32
  } from "../core/opencode-config";
33
- import { getLastConfigError, clearLastConfigError } from "../core/config-store";
33
+ import { getLastConfigError, clearLastConfigError, checkOAuthClientSecretInConfig, checkCustomOAuthEndpointWarning } from "../core/config-store";
34
34
  import { checkAccountsHealth } from "../core/health-orchestrator";
35
35
  import { getHealthCache, normalizeHealthKey } from "../core/config-store";
36
36
 
@@ -105,6 +105,18 @@ export function Dashboard({ pluginPath }: DashboardProps) {
105
105
  } else {
106
106
  setConfigError(null);
107
107
  }
108
+
109
+ // Check for clientSecret in config (security warning)
110
+ const clientSecretWarning = checkOAuthClientSecretInConfig();
111
+ if (clientSecretWarning) {
112
+ setConfigError(clientSecretWarning);
113
+ }
114
+
115
+ // Check for custom OAuth endpoint without allow flag
116
+ const customEndpointWarning = checkCustomOAuthEndpointWarning();
117
+ if (customEndpointWarning) {
118
+ setConfigError(customEndpointWarning);
119
+ }
108
120
  };
109
121
 
110
122
  const loadAccounts = () => {