MASTG-KNOW-0101 ログ (Logs)

iOS 開発者は、デバッグや監視の目的で、さまざまなログ記録メカニズムを使用してランタイム情報を出力できます。print ステートメントや NSLog などの従来のログ記録手法では、システムログに機密情報を誤ってさらし、デバイスにアクセスできる攻撃者がアクセスできる可能性があります。

iOS でログ記録するための現代の安全なアプローチは Apple の統合ログ記録システム を使用することです。これは構造化されたプライバシー指向のログ記録機能を提供します。このシステムは、開発者がログメッセージを重大度別に分類し、プライバシー修飾子を適用して機密データを保護できます。

関連する API は以下のとおりです。

主な概念:

  • プライバシー修飾子: これらの修飾子はデータがログに出現する方法を制御するのに役立ちます。たとえば、.private は永続ログの機密情報を削除し、.public は機密でないデータを公開して表示されます。

  • ログレベル: 統合ログ記録は複数のログレベル (debug, info, error, fault など) をサポートしており、メッセージを重要度と重大度に基づいて分類するのに役立ちます。

安全なログ記録 API を使用するだけでなく、開発者はビルド構成やプリプロセッサディレクティブを実装して、本番ビルドのログ記録を無効化または制限することもできます。これは機密情報がライブ環境でさらされないようにします。

Last updated

Was this helpful?