关于日历的安全性问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
metin2017
V2EX    Android

关于日历的安全性问题

  •  
  •   metin2017 2020-08-27 17:00:03 +08:00 12429 次点击
    这是一个创建于 1876 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如果应用声明了日历读写权限,那么它就很容器读取到日历的全部信息,甚至可以删除,修改,这对使用日历做记录的,不就意味着这些信息完全给了应用?

    另外我当前使用的安卓 7 系统,并没有可以阻止应用读写日历的控制提示

    或许日历根本就只是用来存放一些无关紧要的提示信息的?

    大家怎么看,还是我的理解有问题?

    17 条回复    2020-08-28 16:30:18 +08:00
    guidozeng
        1
    guidozeng  
       2020-08-27 17:03:45 +08:00
    1.是的。
    2.没有用过 android 7,不太清楚这个版本的权限设置。
    3.各人使用日历方式不一样,不能一概而论。例如有的人的日常安排几乎全依赖于日历应用,而有的人则完全用不上。
    fansangg
        2
    fansangg  
       2020-08-27 17:04:21 +08:00
    别纠结了,现在 Android 11 都 beta3 了,你还抱着 Android 7 不放
    metin2017
        3
    metin2017  
    OP
       2020-08-27 17:08:02 +08:00
    @guidozeng 如果日常安排都依赖日历,则信息被应用获取,则被完全监视;无疑谷歌日历使用者众,这是个问题啊
    @fansangg Android 11 可以控制应用读写日历吗?
    vate32
        4
    vate32  
       2020-08-27 17:17:34 +08:00
    基于 Andorid10 的 miui12 可以控制是否允许应用读取日历,甚至可以返回空信息。我猜测这个属于高危权限,高版本的 Android 应该会控制吧,Android7 确实太老了。
    imn1
        5
    imn1  
       2020-08-27 17:22:32 +08:00
    如果有隐私洁癖,如我,这样做:
    不要用系统地日历,这个一开放就全部可读了
    然后用 caldav,建多个 caldav 日历,装多个 APP,一个 app 只对应一个 caldav
    然后根据需要设置权限和通知
    fansangg
        6
    fansangg  
       2020-08-27 17:27:55 +08:00
    @metin2017 Android 6 开始有些运行时权限是需要动态申请的,虽然我没做过读写日历方面的开发,但是我觉得读写日历一个也是属于危险权限,和读写存储空间一样,老版本的 Android 手机我没有用过,我现在用的是基于 Android10 的,日历权限是需要询问的。
    keiayagi
        7
    keiayagi  
       2020-08-27 17:34:05 +08:00
    日历读写都属于危险权限,正常的话,从 Androi 6 开始应用都需要在运行时申请才能实际拿到权限。
    metin2017
        8
    metin2017  
    OP
       2020-08-27 17:35:35 +08:00
    @vate32 可能是吧,新系统可能有控制
    @imn1 系统是其他日历,装了谷歌日历,日历底层是一样的,而且相互可读可编辑啊;不太明白你说的 caldav,装什么 App?
    soji18
        9
    soji18  
       2020-08-27 17:54:12 +08:00 via Android
    日历权限是需要运行时申请的,声明只是说有可能申请。
    Cielsky
        10
    Cielsky  
       2020-08-27 18:23:56 +08:00 via Android
    安卓 7 好像不太行,8,还是 9 以上可以用 appops 返回空信息
    HankAviator
        11
    HankAviator  
       2020-08-27 18:27:58 +08:00 via Android   1
    t/516316
    国产应用一定要慎给权限。到现在这事情也没有反馈。
    106npo
        12
    106npo  
       2020-08-27 18:43:56 +08:00 via Android
    @Cielsky appops 从 4.4 开始就能返回空
    Cielsky
        13
    Cielsky  
       2020-08-27 18:56:17 +08:00 via Android
    @xmumiffy 受教了,我记错了吧
    imn1
        14
    imn1  
       2020-08-27 18:58:41 +08:00
    @metin2017 #8
    日历,或者说行事历,是可以多个的,可以在一个日历客户端同时加载多个,或者不同客户端分开加载,就像 email 客户端可以收发多个邮箱一样,各自独立;你可以根据隐私级别,分开多个日历记事,例如我就五个 caldav 记不同的事,最低级别那个是 139 邮箱带的日历,记些买酱油之类的琐事

    caldav 是服务端 webdav 的一个分支,格式为日历 xml,一个 xml 就是上面说的一个日历,caldav 也有两种格式,一种是 event,一种是 task(也就是 todo),另外还有 carddav (地址簿、通讯录)、日记格式等
    国内支持 caldav 的有中国移动 139 、腾讯(?)等,国外有 google 、icloud 等
    caldav 也可以本地自建,就几个 xml,不占空间的,自建更全,只是不方便多机同步,出门在外要连回家里的 NAS

    APP 指的就是日历客户端,跟电邮客户端一样,有很多,不必只用一个,也没有谁规定一定要用系统自带的客户端

    开放日历权限,只是指系统加载的日历,如果用 caldav 在非系统客户端 app 加载,其他 app 是读不到的,如果用两个 APP 各自加载一个日历,互相是读不到对方那个日历的,跟两个 email 邮箱分开两个 APP 收是一个意思

    简单一句:如果用非系统自带的日历 APP,只要不同步到系统日历,其他 APP 就读不到,跟权限没关系,权限只管系统自带的
    YaakovZiv
        15
    YaakovZiv  
       2020-08-27 21:14:24 +08:00
    我推荐日历和邮件联合记录的方式。
    metin2017
        16
    metin2017  
    OP
       2020-08-28 09:39:05 +08:00
    @imn1 谢谢你耐心的回复,但这整得太复杂了,不想再深入了。

    安卓 7,appops 也麻烦,重启后需要重新 adb 授权,算了,暂时不用手机谷歌日历了,可能等以后系统升级再用
    HankAviator
        17
    HankAviator  
       2020-08-28 16:30:18 +08:00
    @metin2017 不给权限就行了。最坑的一点是谷歌日历如果只是删掉还好,可以从垃圾桶捡回来;我的那次事故是所有人日历项被智行彻底覆盖掉了,找谁也白搭。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1639 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 16:17 PVG 00:17 LAX 09:17 JFK 12:17
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86