Skip to content

Support for redacting private/sensitive information #16421

Open

Description

Description of the new feature/enhancement

I'd like the ability to automatically mask sensitive information in terminal windows. Masking application output would be great; masking user input (e.g., passwords on command line) would be nice as well.

This would be useful when screen sharing, demos, and when recording screencasts.

Warp does this.

Proposed technical implementation details (optional)

Terminal needs to know what to mask. At the very least it should have a user-editable series of regexes to detect potentially sensitive information. Even better would be integration with GitHub's existing secret scanning code, masking anything that matches GitHub's token patterns.

Masked information could use a specific Unicode character (or one of a few similar Unicode characters), so it's as obvious as possible that the output was masked.

Ideally, copying a masked value would copy the original plaintext, so copy/paste works the same as it always does, ignoring the masking.

Activity

  1. added
    Needs-Tag-FixDoesn't match tag requirements
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    on Dec 5, 2023
  2. 237dmitry commented on Dec 5, 2023

    @237dmitry

    Like this?

    Screenshot 2023-12-06 000442

  3. zadjii-msft commented on Dec 5, 2023

    @zadjii-msft
    Member

    I saw something like this a while back

    image

    from https://youtu.be/NxsaHxON350?si=af0dLmZVEYsIeJN-&t=503

    and I thought it was genuinely super cool. Now admittedly, this is from a project where someone is writing their own shell, so they're able to parse all the output from the client app then change it to colored block-drawing characters before it even hits the Terminal, but I thought it was a super clever idea.

    (this of course wouldn't work for a11y at all, but then presumably, you'd disable it if you use a screen reader)

    also xlink #5916

  4. added
    Area-OutputRelated to output processing (inserting text into buffer, retrieving buffer text, etc.)
    Issue-TaskIt's a feature request, but it doesn't really need a major design.
    and removed
    Issue-FeatureComplex enough to require an in depth planning process and actual budgeted, scheduled work.
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    Needs-Tag-FixDoesn't match tag requirements
    on Dec 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-OutputRelated to output processing (inserting text into buffer, retrieving buffer text, etc.)Issue-TaskIt's a feature request, but it doesn't really need a major design.Product-TerminalThe new Windows Terminal.

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions