OSX: 禁止iCloud钥匙链?

自从10.9有了一个新的功能叫iCloud钥匙串的,就出现了不少的麻烦。一是在10.9.3之前,好多人出现无限循环地要求用户输入Local items的密码问题,还好这个问题Apple官方给出了一个临时解决的方法:OS
X Mavericks v10.9.1:反复提示解锁“本地项目”钥匙串
。不过没有不是终极修复。还好10.9.3中几乎不用发愁它了-在我的测试中只幽灵般地出现过一次。二是,有的企业希望禁止它,可能它们的企业的安全规则禁止把诸如帐户信息/信用卡信息等存储到企业以外的任何介质中,尤其是放到网上,虽然Apple声称这个绝对的安全,不过依然没有打消这样的企业的顾虑,或许它们不愿或没有准备好修改内部规则来适应新的技术发展吧。总之,能够禁止就好了。

而其实iCloud钥匙串就是保存在用户的~/Library/Keychains中有着一长串类似UUID的文件夹里面的一个数据库中:

在钥匙链存储(Keychain Access)中,被显示为Local Items,而且与login钥匙链不同,用户无法删除它。以前Local items与login的加密解密类似都是使用用户的登陆密码,一旦用户的登录密码在其它地方改变(比如管理员可以改变本地用户密码,或者AD/OD用户等),系统就会不厌其烦地询问以前的密码来为它们解密。自从10.9.3之后,可能使用了用户认证加密机制而绕过密码加密,所以不会出现询问密码的问题,不过login钥匙串还没有改变。

苹果的技术说了: No。Apple官方没有也不会讨论禁止它的策略/方法。不过建议可以屏蔽网站。

有人说,在系统偏好中禁止iCloud就可以了,无论是用Profile还是MCX等等技术--其实有人发现,在至今可见的所有的OSX版本中Profile都存在一个"bug",使得即便被admin禁止的系统偏好项目,依然可以被普通用户使用。可是即便是那里禁止了,可以用户依然可能在使用其它软件的时候激活它,比如互联网帐号,mail, 联系簿等等。

苹果建议,在网络上把iCloud给屏蔽了。

1. 经过网上多个admin的尝试,似乎与这些apps有关:

<span style="font-size:18px;">/System/Library/CoreServices/Keychain Circle Notification.app
/System/Library/InternetAccounts/iCloud.iaplugin
/usr/libexec/KeychainMigrator</span>

可以删除这些程序--本人没有尝试,是从网上其它地方汇集的,操作之前备份,后果自负。

2. 据说下面的脚本可以判断一个用户是否开启了iCloud:

<span style="font-size:18px;">#!/bin/sh
OSVersion=$(sw_vers -productVersion)

if [ $OSVersion == 10.9 ]; then
	currUser=$( /usr/bin/who | /usr/bin/awk '/console/{ print $1 }' )
	Keychain=$( /usr/libexec/PlistBuddy -c "Print Accounts:0:Services:7:Enabled" "/Users/$currUser/Library/Preferences/MobileMeAccounts.plist" )
	echo "<result>$Keychain</result>"

else
	echo "<result>False</result>"
fi</span>

3. 这个脚本可以读取保存在当前用户plist文件中的与iCloud有关的网址,并添加到host文件中,来屏蔽它们:

#!/bin/sh

####################################################
#
# This script checks the url iCloud Keychain uses
# and adds a record to the /etc/hosts file to point
# it back to itself.
#
# Written by: Kenny 1/17/14
#
#####################################################

# Get the current user.
currentUser=`ls -l /dev/console | cut -d " " -f4`
echo "$currentUser"

# Get the URL iCloud Keychain contacts
iCloudKC=`defaults read /Users/$currentUser/Library/Preferences/MobileMeAccounts.plist | grep -A 4 "KEYCHAIN_SYNC" | grep "escrow" | cut -d ':' -f 2 | sed 's/[/]//g'`
echo "$iCloudKC"

# Append the /etc/hosts file
echo "127.0.0.1       $iCloudKC" >> /etc/hosts
echo "host file appended"

4. 这个脚本把所有的iCloud escrow服务器地址都屏蔽掉:

#!/usr/bin/env bash

HostFile="/private/etc/hosts"
ditto -v "$HostFile" /private/etc/hosts.bkup
CurrentBlockHosts=$(cat "$HostsFile" | grep -c "icloud")
if [[ "$CurrentBlockHosts" -eq 25 ]]; then
	exit 0
elif [[ "$CurrentBlockHosts" -eq 0 ]]; then
	echo "##" >> "$HostFile"
	echo "# Block the following hosts" >> "$HostFile"
	echo 127.0.0.1 icloud.com >> "$HostFile"
	for (( i = 1; i < 10; i++ )); do
		echo "127.0.0.1 p0$i-escrowproxy.icloud.com" >> "$HostFile"
		echo "127.0.0.1 p0$i-escrowservice.icloud.com" >> "$HostFile"
	done
	for (( i = 10; i < 25; i++ )); do
		echo "127.0.0.1 p$i-escrowproxy.icloud.com" >> "$HostFile"
		echo "127.0.0.1 p$i-escrowservice.icloud.com" >> "$HostFile"
	done
else
	logger "[iCloudBlocker] Found $CurrentBlockHosts iCloud entries"
fi
exit 0

以上这些都是从网上搜集的信息,没有经过完全测试。

OSX: 禁止iCloud钥匙链?

时间: 2024-11-06 05:38:59

OSX: 禁止iCloud钥匙链?的相关文章

SIP协议&amp;开源SIP服务器搭建和客户端安装

1. SIP SIP 是一个应用层的控制协议,可以用来建立,修改,和终止多媒体会话,例如Internet电话 SIP在建立和维持终止多媒体会话协议上,支持五个方面: 1)   用户定位: 检查终端用户的位置,用于通讯. 2)   用户有效性:检查用户参与会话的意愿程度. 3)   用户能力:检查媒体和媒体的参数. 4)   建立会话: “ringing”,建立会话参数在呼叫方和被叫方. 5)       会话管理:包括发送和终止会话,修改会话参数,激活服务等等. 1.1 SIP基本组成要素 用户

SDWebImage之SDImageCache

SDImageCache和SDWebImageDownloader是SDWebImage库的最重要的两个部件,它们一起为SDWebImageManager提供服务,来完成图片的加载.SDImageCache提供了对图片的内存缓存.异步磁盘缓存.图片缓存查询等功能,下载过的图片会被缓存到内存,也可选择保存到本地磁盘,当再次请求相同图片时直接从缓存中读取图片,从而大大提高了加载速度.在SDImageCache中,内存缓存是通过 NSCache的子类AutoPurgeCache来实现的:磁盘缓存是通过

MAC OSX 驱动操作

mac ox系统的驱动安装常规操作:下载到 *.kext 的驱动以后,都可以直接把它拖到 /System/Library/Extensions/ 下替换掉原来的文件.替换了以后,还需要修复权限才能够正常使用.因为 Mac OS X 是基于 FreeBSD 的操作系统,因此 Unix 下对文件权限的依赖就被继承了下来了.大家在替换了 *,kext 文件以后,必须要打开终端,输入如下命令:sudo -s chmod -R 755 /System/Library/Extensions chown -R

OSX 10.11 Developer Beta 1的已知问题列表

OSX 10.11 Developer Beta 1的已知问题列表如下,如有你无法忍受的,请不要测试. 应用程序如需要向系统位置写文件的,在10.11下将无法工作.意味着大量需要调正系统.安装驱动的软件都需要重新升级.从10.7或更早系统升级是不推荐的.无法从WINDOWS迁移.AirPlay:可能无法正常与AppleTV连接.Aperture:无法导入RAW文件:workspace会经常性的消失(可从dock点回):部分SONY RAW无法显示:部分对话框无法显示导致程序卡死(需要强制对出并重

AFNetworking是一个为 iOS 和 Mac OSX 制作的令人愉快的网络库

AFNetworking是一个为 iOS 和 Mac OSX 制作的令人愉快的网络库,它建立在URL 装载系统框架的顶层,内置在Cocoa里,扩展了强有力的高级网络抽象.它的模块架构被良好的设计,拥有丰富的功能,因此,使用起来,必定赏心悦目. @介绍 1.支持HTTP请求和基于REST的网络服务(包括GET.POST. PUT.DELETE等) 2.支持ARC 3.要求iOS 5.0及以上版本 4.UIKit扩展@配置1.下载AFNetworking,将2个文件夹:AFNetworking和UI

苹果iCloud设备厂家

苹果iCloud设备厂家[电薇:132乄8688乄4109][Q群780516296]美联储Kaplan表示9月和12月加息仍然适当澳禁止华为参与5G建设 吐了一年唾沫后狠踹我们一脚下司犬活活咬死8岁小主人:咬穿喉咙咬烂大腿(图)中国女足巴萨式配合撕碎朝鲜防线 王霜推射破僵贵州兴义民族师范学院原院长韦磐石等3厅官被捕张常宁恋情曝光接受求婚 男友系江苏男篮帅哥炫舞二人转+暴虐小学生 霍华德哈尔滨放飞自我本土电池质量不达标 通用推迟在华电动车生产计划香港房地产协会:填海是长远解决土地不足唯一方法工资

防止恶意解析——禁止通过IP直接访问网站

一.什么是恶意解析 一般情况下,要使域名能访问到网站需要两步,第一步,将域名解析到网站所在的主机,第二步,在web服务器中将域名与相应的网站绑定.但是,如果通过主机IP能直接访问某网站,那么把域名解析到这个IP也将能访问到该网站,而无需在主机上绑定,也就是说任何人将任何域名解析到这个IP就能访问到这个网站.可能您并不介意通过别人的域名访问到您的网站,但是如果这个域名是未备案域名呢?一旦被查出,封IP.拔线甚至罚款的后果都是需要您来承担的.某些别有用心的人,通过将未备案域名解析到别人的主机上,使其

Mac OSX (EI Capitan)搭建Caffe环境并配置python接口

Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的贾扬清.Caffe是纯粹的C++/CUDA架构,支持命令行.Python和MATLAB接口:可以在CPU和GPU直接无缝切换.我在MacbookPro(无NVIDIA显卡)上大费周章地配置了Caffe的环境,并花了许多时间配置其python接口. 一.下载Caffe github上的下载地址:https://github.com/BVLC/caffe进入到下载后的路径,并复制 Makefile.config.ex

avalon学习笔记ui篇-如何将avalon默认的amd模型禁止,以及用require重写。

一.如何禁止avalon自带的amd模型 1.采用avalon.shim.js这个文件,这个文件删除了原本自带的amd模型,不需要手动删除,修改. 2.打开avalon.js这个文件,搜索avalon.config,将true改为false. 二,下载text.js和css.js 1.因为avalonUI依赖了html文件和css文件. 2.并且将text.js和css.js,在配置中预加载 priority:['text','css'] 三.完整配置项 require.config({ //b