Redis との統合 を確保する NodeJS

Redis 認証を使用して 接続する

const redis = require('redis');  
const client = redis.createClient({  
  host: 'localhost', // Replace 'localhost' with the IP address of the Redis server if necessary  
  port: 6379, // Replace 6379 with the Redis port if necessary  
  password: 'your_redis_password', // Replace 'your_redis_password' with your Redis password  
});  
  
// Listen for connection errors  
client.on('error',(err) => {  
  console.error('Error:', err);  
});  

 

TLS/SSL を使用して接続を認証する

TLS/SSL間の接続を認証するには NodeJS、 Redis SSL 証明書をインストールし、それを使用して安全な接続を作成する必要があります。

const redis = require('redis');  
const fs = require('fs');  
const tls = require('tls');  
  
// Read SSL certificate files  
const options = {  
  host: 'localhost', // Replace 'localhost' with the IP address of the Redis server if necessary  
  port: 6379, // Replace 6379 with the Redis port if necessary  
  ca: [fs.readFileSync('ca.crt')], // Path to the CA certificate file  
  cert: fs.readFileSync('client.crt'), // Path to the client certificate file  
  key: fs.readFileSync('client.key'), // Path to the client key file  
  rejectUnauthorized: true, // Reject the connection if the certificate is not valid  
};  
  
// Create Redis connection with TLS/SSL  
const client = redis.createClient(options);  
  
// Listen for connection errors  
client.on('error',(err) => {  
  console.error('Error:', err);  
});  

適切な SSL 証明書とキー ファイルを提供し、TLS/SSL 接続を受け入れるように構成されていることを確認する必要があることに注意してください Redis。

 

エラー処理と安全なエラーログ

アプリケーションでは NodeJS 、エラーを安全に処理し、パスワードや Redis 接続の詳細などの機密情報をエラー メッセージに開示しないようにしてください。 try-catch ブロックを使用してエラーをキャッチし、安全にログに記録します。

try {  
  // Perform Redis operations here  
} catch(err) {  
  console.error('Error:', err.message); // Safely log the error, avoiding detailed error information  
  // Handle the error appropriately based on your application's requirements  
}  

 

使用 Firewall およびユーザー権限

を使用して、不要な IP アドレス Firewall からのアクセスを制限します Redis。 また、 Redis ユーザーの役割と権限に基づいてアクセスを特定して制限し、データのセキュリティを確保します。

Redis これらのセキュリティ対策を遵守すると、アプリケーションと統合するときに データが保護され NodeJS 、アプリケーションの安全性が確保されます。