Sync: Support omitting sensitive info in ConstructAboutInformation()
ConstructAboutInformation() gathers debugging information about the sync state. It's employed both to power the sync-internals page - a debugging page only accessible locally - as well as to compose logs sent to Google in case of crashes (provided the user has agreed to this). For the latter use case, the caller used to manually filter a section containing PII, for privacy. Delegating this responsibility to the caller was bad since the return value is quite "weakly typed" (base::DictionaryValue). This meant that one might easily add new sensitive information to the return value while forgetting to update the filter in the caller. In this CL we transfer this responsibility to the method, by exposing an include_sensitive_data parameter. Additionally, we now force the constructor of a "section" to specify whether it is sensitive or not. This last part makes the code more privacy-aware, which should make it less likely to accidentally leak any data (even if this solution isn't bullet-proof). Bug: 973820 Change-Id: I99138a741c26755e138ac0a60dd08815aa90a10c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2467939 Commit-Queue: Victor Vianna <victorvianna@google.com> Reviewed-by:Marc Treib <treib@chromium.org> Cr-Commit-Position: refs/heads/master@{#816616}
Showing
Please register or sign in to comment