我開發,將支持我們的組織多個部門,並要定義哪些數據是AD組的用戶在訪問的應用程序。的isUserInRole()VS會議[]在.NET Web應用程序
我問題是,在每個決策點使用IsUserInRole()
調用,或者在用戶登錄時加載幾個Session[]
變量,它們是布爾型的,並在整個代碼中使用這些變量,是否更具成本效益(例如帶寬,時間片等)?
想法?
我開發,將支持我們的組織多個部門,並要定義哪些數據是AD組的用戶在訪問的應用程序。的isUserInRole()VS會議[]在.NET Web應用程序
我問題是,在每個決策點使用IsUserInRole()
調用,或者在用戶登錄時加載幾個Session[]
變量,它們是布爾型的,並在整個代碼中使用這些變量,是否更具成本效益(例如帶寬,時間片等)?
想法?
我會避免會話。由於您需要集中式存儲(數據庫或Redis),因此它們會擴大應用程序的難度,而每一個請求都會受到影響。由於必須等待請求完成才能繼續實際業務邏輯,因此它會減慢進程速度。
這個答案是使用JWT令牌。對於少量數據(如角色數量有限,而不是數百個),他們工作得很好。 JWT令牌可以安全地放入cookie中,以便每個瀏覽器請求都將其傳送到服務器。
你可能會得到關於JWT更多信息令牌這裏:https://jwt.io/introduction/。這個其他StackOverflow問題有很多關於JWT令牌的信息:Using JWT to implement Authentication on Asp.net web API。
我希望可以解決您的問題。祝你好運。