Comments 115
сообщите в Telegram, потому что я совершенно не разобрался куда писать.
У них вполне есть github, в котором обычно и пишут багрепорты. К тому же, на их сайте можно написать запрос в техподдержку. И я бы не сказал, чтобы это всё было спрятано…
Если у вас есть доступ к клиенту с другого места, там же есть возможность убить все сессии на других устройствах.
А браузеры сбрасывают кэши/пароли при удалении через перемещение в корзину?
Разве вообще такой способ удаления предполагает выполнение каких-то скриптов/действий удаляемым приложением?
Как если бы вы вы винде удаляли через панель управления — программы и компоненты — удалить программу
О чем я не в курсе: вызывается ли при этом какой-то скрипт удаления?
Я именно поэтому про браузеры и спросил. Как они? Удаляют свои кэши/явки/пароли?
Если нет — то какие вообще вопросы к Телеге?
через панель управления — программы и компоненты — удалить программуПри таком удалении часто программы таки оставляют свои настройки и данные в папке юзера.
Суть проблемы: удаление приложения из Applications не удаляет созданные им файлы (стандартное поведение для Маc приложений, где, как правило, нет никакого uninstaller)
На старых версиях MacOS можно было подвесить в систему скрипт на событие удаления папки и в нём зачистить остальное, сейчас – нет. Так что правильное поведение – стирать прогу и данные (полистайте FAQ телеги, там наверняка описано, как это делать проще всего – наверняка перед удалением проги надо что-то сделать).
Удалить, затем поставить приложение – всё равно что не удалять его вовсе.
Но всё же пошлите им багрепорт, что-то придумать можно (но ненадёжное… Всё, что не требует полной аутентификации на старте проги – ненадёжно)
Да. Но Вы узнаете о том, что кто-то получил доступ к Вашему аккаунту лишь после того, как несанкционированный доступ был получен
не совсем так, как я понял просто аккаунт сохраняется как бы с активной сессией. Удаляется сама программа. Поэтому приём с выйти из других сессий, в данном случае, должен помочь.
Ну и выход из аккаунта перед удалением тоже
Вы, видимо, не имели дела с MacOS? Там своя специфика.
Вот именно для таких пользователей Эпл делает свою ОС.
Там «интуитивность» поставлена во-главу угла. Но в итоге есть вот такие последствия.
такое же поведение у любого другого приложения — skype, zoom, firefox — любого.
так что берегите свой компьютер и не теряйте и включити полное шифрование диска.
Ты про кэши приложеник в оси не в курсе от слова совсем?
Мдауж. В принципе, понятно почему так, но все таки хотелось бы чтоб мессенджер разлогинивался везде хотя бы при смене пароля. Хочется верить, что пофиксят.
Хотя, в любом случае у них уже есть возможность все сессии завершить. Впрочем как и у вас когда вы меняете пароль.
Нет возможности сессии завершить: у устройств, которые только что залогинились должно пройти какое-то время перед тем, как они смогут удалять сессии.
Так раньше точно было, сейчас не уверен.
И наверное, не только что залогинились, а залогинились, являясь совсем новым устройством, т.к. у меня сразу был доступ всегда к закрытию сессий других. Вообще, это походу нада самому всё проверять везде, а то похоже никто не в курсе как и что происходит :)
Если нехорошие люди получили доступ к моему устройству или аккаунту, то у меня проблемы совсем другого порядка. И меняя пароль я хочу чтоб мне хотя бы галочкой в интерфейсе в этом же окне предложили логаут.
Или, таки правильно заметили выше, если забыли выйти, то всегда можно завершить сессию удаленно. И при смене пароля (при желании) можно выйти из всех сессий.
Т.е. здесь скорее дается больше контроля пользователю.
Перемещается «ярлык» из ланчпада в корзину и это инициирует удаление программы из системы.
Так что с удобством все норм, не надо лезть в пакетный менеджер или в панель управления.
Тут смешаны два случая.
- Удаление приложения, скачанного из App Store. В этом случае перетягивание в корзину в Launchpad – это не удаление .app, а просто альтернативный способ нажать "крестик", т. е. попросить ОС удалить программу.
- Для приложений не из App Store перетягивание из Launchpad в корзину ничего не делает, и для них стандартным способом удаления действительно является удаление .app из папки /Applications. Некоторые программы имеют деинсталлятор, который находится либо рядом с программой, либо в .dmg-образе установщика.
1) держать данные и код вместе
2) удалять данные приложения когда удаляется кода приложения
И это — хорошее и правильное поведение!
Некоторые программы имеют деинсталляторы явно, для других программ можно найти рецепты как удалить все данные.
Есть довольно определенные места где программа может складывать данные в папке пользователя. Такие как ~/Library/Application Support/%program name% или ~/.config/%program name%
Удаление приложения методом переноса в корзину — это супер-удобно!
А в macOS, если приложение установлено из App Store, или в Linux, если оно установлено из репозиториев, за удаление отвечает не деинсталлятор Telegram, а пакетный менеджер дистрибутива, у которого свои представления о том, нужно ли зачистить данные приложения. Например, пакетный менеджер apt при удалении приложения не тронет данные приложения, лежащие в домашнем каталоге пользователя. Это значит, что профили Telegram, Firefox, Chrome и подобных им приложений придётся удалить вручную.
Хотя многие разработчики к счастью это понимают и делают портативные версии программ…
Это не винда, это Unix. Здесь не "мусор", а вполне четко организованные пользовательские данные, лежащие во вполне известных местах, и не дело программы при удалении решать за пользователя, нужны ли ему ЕГО данные, или нет. Подумайте хотя бы о возможности разделения одного профиля (например классическое монтирование /home по NFS) с разных машин — и что, программа будет удалять, не зная, что гробит другим копиям?
Или еще более в лоб — должна ли деинсталляция Microsoft Word удалять все файлы .doc на компьютере? А игра свои сэйвы — может, пользователь потом захочет переустановить и продолжить играть?..
Извините, и во многих современных играх пользователь реально может указать КУДА сохранять?
Сейчас игры нацелены на облачное сохранение, чтобы иметь преимущество перед пиратскими копиями. А поиск локального сейва сделать предельно сложным
И неплохо бы, чтобы приложение его за собой убирало. Если в Unix это не принято, то не думаю, что это стоит считать достоинств.юом.
Это было бы крайне странно у абсолютно ужасно, если бы удаление приложения одним пользователем (ну, вот дали ему такую часть прав) приводило к уничтожению пользовательских данных у ВСЕХ пользователей этой системы. Даже на винде. На юниксах же это абсолютно неприемлимо.
Но в статье же речь про закешированные сессии, которые у каждого пользователя свои.
Ну так и кэш браузера, например, у каждого пользователя свой. Но это не важно, т.к. это не пользовательские данные, а служебные данные программы. Без самой программы они для всех пользователей никакого смысла не имеют.
Да ок. Вопрос-то не в их полезности. А в том, как какой-то пользователь может, удаляя софт, влиять на пользовательское пространство других пользователей?
Или мы говорим о формальных правах доступа, что один пользователь не должен иметь прав на удаление в каталоге другого пользователя? Так для удаления программы из общего пространства требуются права администратора, а администратор обычно имеет доступ к каталогам всех пользователей.
причём здесь кэш? Речь идёт об аутентификационных данных и истории сообщений. В вендах это норм, когда, скажем, при смене почтовой программы прибиваются почтовые базы и ssh-ключи ВСЕХ пользователей? Ведь без почтовой программы почтовая база не имеет смысла, правда? Ну, и зачем вам ssh ключ без ssh клиента, правда? А то, что можно поставить другую почтовую программу вы не подозреваете? Я давно знал, что венда малопригодная для работы система, но вот чтобы так? :)
аутентификационных данныхУ вас кто-то логин/пароль удалил? Удаляется токен сессии, который вам неизвестен и не нужен, а нужен он только программе, чтобы на каждый чих у вас логин с паролем не спрашивать (фактически, тот же кэш).
истории сообщенийИстория сообщений в Телеграме хранится на сервере. Удаляется локальный кэш истории сообщений.
В вендах это норм, когда, скажем, при смене почтовой программы прибиваются почтовые базы и ssh-ключи ВСЕХ пользователейНет, не норм, а что, кто-то их прибивает?
История сообщений в Телеграме хранится на сервере.
Секретные чаты тоже?
У вас кто-то логин/пароль удалил?
нет, я его не помню. Я знаю, что компьютер помнит токен сессии (что даже безопаснее, чем пароль, если грамотно сделать). Я расчитываю, что если Я в ЯВНОМ виде не удаляю эту ВАЖНУЮ для инфраструктуры информацию (даже если я сам не могу её прочитать), то я смогу ею пользоваться в дальнейшем. То, что эта информация сгенерирована не мною лично, то, что я вручную не могу извлечь из неё смысла, то, что без программы я не могу ею воспользоваться — какая разница? Я и док файл не могу без ворда прочесть.
Удаляется токен сессии, который вам неизвестен и не нужен, а нужен он только программе, чтобы на каждый чих у вас логин с паролем не спрашивать
ssh ключ мне неизвестен и не нужен, сгенерирован программой, и нужен тоже только только программе, чтобы на кажый чих доступ не запрашивать. Можно удалять?
на каждый чих у вас логин с паролем не спрашивать (фактически, тот же кэш).
Расчёт вашей зарплаты бухгалтерия хранит во всяких базах данных и прочих системах просто, чтобы на каждый чих не пересчитывать его на счётах (фактически, тот же кэш). Почистите кэши в вашей конторе :)
История сообщений в Телеграме хранится на сервере.
Не вся. Впрочем, это же тоже просто кэш, историю сообщений можно вспомнить и написать заново!
Нет, не норм
вы уж определитесь норм или не норм. В вашей терминологии это всё служебные данные приложений. Да, без приложения они не нужны. Но если установить приложения заново (или другое однотипное приложение), то они, оппаньки, опять оказываются не просто нужны, но и жизненно необходимы.
а что, кто-то их прибивает?
Ну, вон, там выше человек пишет, что неудаление данных при удалениии приложения — это чуть ли не недостаток юниксов (и точно не достоинство). Видимо, в лишёных этого "недостатка" вендах, таки да :)
нет, я его не помню. Я знаю, что компьютер помнит токен сессии (что даже безопаснее, чем пароль, если грамотно сделать). Я расчитываю, что если Я в ЯВНОМ виде не удаляю эту ВАЖНУЮ для инфраструктуры информацию (даже если я сам не могу её прочитать), то я смогу ею пользоваться в дальнейшемЯ не знаю, откуда у вас такие ожидания, но я никогда не видел программы, которая бы обещала пользователю сохранность токена сессии. Собственно, даже упоминаний о наличии этого токена обычно нет — потому что это детали реализации, а не важная для пользователя функциональность. Токен может быть инвалидирован даже без переустановки, например, по прошествию определенного времени, при изменениях в аккаунте, иногда даже просто при изменении IP адреса. Короче говоря, вы пользуетесь токеном не по назначению и вполне естественно, что программы не оправдывают ваших ожиданий.
ssh ключ мне неизвестен и не нужен, сгенерирован программой, и нужен тоже только только программе, чтобы на кажый чих доступ не запрашиватьКакой доступ? ssh ключ и есть ваш доступ, что будет запрашивать программа, если ключа нет?
Кстати, если программа запросила у вас ключ, потом сохранила его где-нибудь у себя во временных файлах (но вам об этом не сообщила и не обещала, что ваш ключ надежно сохранен), то вот эта копия ключа опять-таки становится служебными данными программы и должна быть удалена при деинсталляции.
Не вся. Впрочем, это же тоже просто кэш, историю сообщений можно вспомнить и написать заново!Нельзя, по крайней мере в общем случае.
В вашей терминологии это всё служебные данные приложенийСм. выше — в ваших примерах это пользовательские данные.
Ну, вон, там выше человек пишет, что неудаление данных при удалениии приложения — это чуть ли не недостаток юниксовНеудаление служебных данных, про пользовательские он такого не писал.
Я не знаю, откуда у вас такие ожидания, но я никогда не видел программы, которая бы обещала пользователю сохранность токена сессии.
Программы вообще редко что обещают. Наоборот, как правило всячески отказываются от какой бы то ни было оветственности :)
Собственно, даже упоминаний о наличии этого токена обычно нет — потому что это детали реализации, а не важная для пользователя функциональность.
Не, ну, вам сохранность сессии может и не важна, а мне очень даже важна. Например, у меня какой-нибудь бот на серваке живёт в сессии, а тут обновили клиентский софт и операционка такая взяла, да и уничтожила сессии. Как внутри — не важно, важен результат. И с подходом — всё сломаем, результат печальный.
Токен может быть инвалидирован даже без переустановки, например, по прошествию определенного времени, при изменениях в аккаунте, иногда даже просто при изменении IP адреса.
С чего вы взяли? Потому, что в используемой вами программе это так? Не можете представить, что может быть иначе? Может, мир довольно разнообразен :)
Короче говоря, вы пользуетесь токеном не по назначению и вполне естественно, что программы не оправдывают ваших ожиданий.
Наоборот. Программа действует строго согласно общепринятым ожиданиям и полностью оправдывает ожидания мои. Это вы с ещё одним здешним товарищам почему-то пытаетесь меня убедить, что ни я ни авторы юниксов ни авторы многочисленных программ не правы.
Какой доступ? ssh ключ и есть ваш доступ, что будет запрашивать программа, если ключа нет?
У вас какой-то странный взгляд на мир. Это не прогрмма запрашивает доступ у ключа, это я запрашиваю доступ. Если ключ (или, скажем, токен) есть, я подтверждаю полномочия с их помощью. Если нет, то иным способом, например, логин-паролем или запросом через иную систему управления доступом, с помощью которых регистрирую свой ключ/токен, как валидный. ssh ключ — это и есть разновидность токена. Я не вижу отличий.
Кстати, если программа запросила у вас ключ, потом сохранила его где-нибудь у себя во временных файлах (но вам об этом не сообщила и не обещала, что ваш ключ надежно сохранен)
А что, кто-то так делает? Ну, с предупреждением и обещанием? Обещают сохранность сессии, а как это реализовано, ну, в теории, хорошо бы рассказать, но никто этого не делает, тк никто этого не читает.
и должна быть удалена при деинсталляции
По-прежнему не понимаю почему должна, особенно если удаляет один пользователь, а "должна" удалить у другого? По-моему, не должна.
Неудаление служебных данных, про пользовательские он такого не писал.
На мой взгляд, аутентификационная информация и история переписки — вполне себе пользовательские данные.
тут скорее почему бы не спросить разрешения на очистку данных во время удаления?
Или еще более в лоб — должна ли деинсталляция Microsoft Word удалять все файлы .doc на компьютере?
некорректное сравнение
А игра свои сэйвы — может, пользователь потом захочет переустановить и продолжить играть?..
да, пусть синхронизирует данные с облаком и удалит за собой все
Telegram тут демонстрирует общепринятое поведение. Во-первых, предполагается что вы никого не пускаете в свой профиль на компьютере, а если надо, то еще и шифруете его. Во-вторых, в телеграме можно удаленно разлогиниться. В-третьих, пользовательские данные никто не трогает.
OAuth-токены, не защищенные паролями ssh-ключи, открытые профили c долгосрочными куками в браузерах, и т.д. и т.п. — вас же не смущает все это? Добро пожаловать в дивный новый мир.
Кстати, если не ошибаюсь, то разработчики бесплатную лицензию давали на CleanMyMac. Нужно было вступить в их группу в Facebook. Возможно, сейчас ещё актуально. Аргументировали они тем, что лучше мы вам дадим ключ, чем вы будете где-то скачивать пиратку.
А AppCleaner тоже как-то попользовался: с задачей справлялась программка. Сейчас уже должно быть получше, развивается же.
Тут это даже невозможно трактовать как баг, это известное поведение *никсов.
~/Library/Application Support/Telegram Desktop
Advanced level:
Ставьте/удаляйте все приложение через homebrew, он чистит за собой в отличие от «я перенес бинарь в корзину» метода
github.com/Homebrew/homebrew-cask/blob/master/Casks/telegram-desktop.rb
Просто очередная статья о том, как в своём профиле на своём компе получить, внезапно, доступ к своей переписке.
Что не отменяет, конечно, того факта, что при смене пароля неплохо бы старые сессии если не инвалидировать, то хотя бы как-то подтверждать.
удалением должна заниматься операционная система, а приложению нужно лишь предоставить списки её файлов, разделённые по категориям, типа файлы приложения, кеш, данные, ещё чего-нибудь
В идеальном мире — да. Но по факту любому хоть сколько-нибудь сложному приложению требуются еще какие-то дополнительные действия при установке/удалении/обновлении, которые в стандартной модели не предусмотрены.
MSI, к счастью, позволяет эти действия выполнять путем запуска скриптов, других программ или небольших кусочков кода (custom actions). В остальном MSI — лютый ******, переусложненный, неочевидный, с кучей побочных эффектов и т.д. Поэтому его уже который раз пытаются заменить, но пока безуспешно.
Заголовок не соответствует действительности. Менялся не пароль, а метод 2FA, что не одно и то же. Смена 2FA как правило не завершает все сессии, а смена пароля — завершает.
Что-то там удалять, шифровать локально, или не «привязываться» к вашему номеру телефона — в его обязанности не входит.
brew cask install appcleaner
Читал FAQ, там написано про то что можно в самом приложении писать и то что есть Twitter аккаунт. Писал в самом приложении, в разные дни (3 раза), не ответили. Писал в Twitter`е, под постом было много комментов без особого смысла, и Twitter аккаунт Telegram`а ответил почти на все. Но на мои два сообщения — ответа я так и не получил. Вот даже не знаю, в чем проблема наладить хоть один метод коммуникации?
посоветуйте, пожалуйста, куда писатьБожена Львовна с полпинка снесла телеграм-канал, который ее пародировал. И даже теперь в новом канале дисклеймер про то, что это «Личный пародийный аккаунт» — примечание для совсем тупых, очевидно.
… будь как Божена!.. (с)
в чем проблема наладить хоть один метод коммуникации?… скрипач — не нужен, родной… (с) освежите классику, что ли…
Вот вам подсказка на миллион: специально для этой цели в MacOS реализован Guest User, который в момент log out сносит все ваши следы. Если конечно вы доверяете MacOS за которую садитесь. Защита кстати работает и в обратную сторону – пока вы сидите под Guest User, личные данные остальных пользователей будут вам принципиально недоступны, поскольку будут зашифрованы на диске.
И да, чтобы все вышесказанное работало, внезапно нужно хранить исполняемые файлы и данные приложений в разных местах.
Ну и собственно, чего вы ожидали? вы удалили неизменяемый исполняемый файл а все динамические данные остались где и были. На место этого исполняемого файла вы положили новый такой же — с какой стати ему не работать как прежде? Говоря иначе телеграм просто не знает о том что его исполняемый файл удалили и подменили таким же другим.
Не знаю на счёт iOS, из известных мне данные автоматически удаляются только в Android т.к. в последнем приложения существенно более изолированы друг от друга чем в десктопных ОС и Android всегда знает где лежат данные приложения. Тем не менее и здесь мусор может оставаться если приложение пишет что-то на карту памяти не в стандартное расположение (Android/data) — но тут уже вина за самим приложением а также разрешением доступа к памяти которые вы даёте явно.
Для удаления профиля телеграм с компа надо:
1) закрыть телеграм
2) перейти в папку ~/Library/Group Containers
3) удалить папку, в названии которой есть "*.keepcoder.Telegram"
На всякий случай уточню, что символ "~" в пути к папке это путь к папке профиля вашего пользователя. Полный путь будет что-то вроде:
/Users/Viktor/Library/Group Containers
После удаления Telegram входит в учетную запись без верификации даже после смены пароля