2011-06-05 127 views
4

我们正在设计一个Appfabric缓存系统。我们对安全性感到疑惑。Appfabric缓存安全

具有缓存项目的服务器如何知道该项目的请求来自缓存集群或授权服务器中的另一台服务器?

我们担心的是:任何人都可以访问Appfabric缓存端口,从缓存中读取项目吗?

回答

8

不,访问端口不足以读取缓存项目。

AppFabric Cache通过net.tcp在内部使用WCF通信。因此,默认情况下,Windows安全性已启用。当您的客户端代码访问缓存时,会导致进程标识被传递。在缓存集群上检查身份,如果您没有为该身份授予缓存访问权限,则请求被拒绝(您会看到这很奇怪“存在临时故障,请稍后重试”)。

通常会创建一个特殊帐户来运行您的进程/应用程序池。您可以使用高速缓存管理的Windows PowerShell授予访问权限:

PS C:\Windows\system32> Grant-CacheAllowedClientAccount YOURDOMAIN\ProcessAccount 

要检查访问使用以下命令:

PS C:\Windows\system32> Get-CacheAllowedClientAccounts 
Administrators 
NETWORKSERVICE 
IIS APPPOOL\ASP.NET v4.0 
YOURDOMAIN\ProcessAccount 

希望这有助于。

+0

非常好,您如何授予用户权限:IIS APPPOOL \ ASP.NET v4.0?你准确地写了哪个用户名? – 2011-07-06 11:41:28

+0

Grant-CacheAllowedClientAccount“IIS APPPOOL \ ASP.NET v4.0”。或者,您可以发出没有参数的命令,并且它会要求您输入不带引号的帐户名称。 – UserControl 2011-07-06 12:50:00

+0

非常感谢:) – 2011-07-06 13:40:35

2

可以配置appfabric缓存来加密和认证来自客户端的连接。

但是,我们使用加密算法将敏感数据存储在缓存和后端SQL中。这样,我们可以确保存储在两个系统中的所有数据都是安全的。