2010-11-24 89 views
0

我在SL 4應用程序中使用RIA身份驗證服務。Silverlight 4,RIA身份驗證服務和角色

<roleManager enabled="true" defaultProvider="CRMRoleProvider" cacheRolesInCookie="true" cookieProtection="All" cookieSlidingExpiration="true" cookieName="MyCookieName" cookieTimeout="900"> 

然而,當我從我的SL應用程序登錄,只有身份驗證Cookie通過響應集:我已經配置如下我roleProvider。角色cookie不是。當我刷新瀏覽器時,LoadUser操作(WebContext的一部分)的響應也設置角色cookie。那麼,爲什麼登錄後我的角色cookie不會被設置?

回答

0

如果我還記得,RIA Services確實使用了自定義角色管理,以便在客戶端訪問它們而無需自己編寫任何代碼。

它允許你做這樣的事情在你的應用程序SL:

WebContext.Current.User.IsInRole("RoleId") 

但是不要忘記檢查任務服務器方太。

+0

其實我只需要在服務器上做。問題是角色是從Web服務中獲取的,我想使用該Cookie,因此並非每次需要檢查用戶的角色時,我都會調用該服務。 – 2010-11-24 19:29:31