Back to all reviewers

Protect sensitive data

lobehub/lobe-chat
Based on 3 comments
TypeScript

Always identify and properly protect sensitive data fields in your code. Sensitive information includes IP addresses, API keys, authentication tokens, personal identification data, and high-privilege credentials.

Security TypeScript

Reviewer Prompt

Always identify and properly protect sensitive data fields in your code. Sensitive information includes IP addresses, API keys, authentication tokens, personal identification data, and high-privilege credentials.

Key practices:

  • Remove unnecessary sensitive fields from storage (like IP addresses in usage records)
  • Encrypt sensitive user data before database storage (API keys, tokens)
  • Be aware of sensitive data in external payloads (webhooks, API responses)
  • Avoid storing high-privilege credentials like accessKey/accessSecret in plaintext
  • Treat personal data (ID cards, phone numbers) as highly confidential

Example of proper sensitive data handling:

// Bad: Storing IP address unnecessarily
export const usageRecords = pgTable('usage_records', {
  ipAddress: text('ip_address'), // Remove this sensitive field
});

// Good: Encrypt sensitive user data
const encryptedKeyVaults = encrypt(userKeyVaults); // Encrypt API keys before storage

// Good: Be cautious with webhook data containing sensitive fields
const parsed = JSON.parse(payloadString) as CasdoorWebhookPayload;
// Be aware this may contain accessKey, accessSecret, idCard, etc.

Always ask: “Does this field contain sensitive information?” and “How can I minimize exposure while maintaining functionality?”

3
Comments Analyzed
TypeScript
Primary Language
Security
Category

Source Discussions