Tôi không phải là chuyên gia SharePoint theo bất kỳ cách nào và tôi đã có một thời gian thực sự khó tìm thông tin phù hợp về điều này. Xin giúp tôi!Tính lại các xác nhận quyền sở hữu cho người dùng SharePoint 2010 trong khi người dùng vẫn đăng nhập
Tôi cần một cách để tạo mã thông báo xác nhận quyền sở hữu được thiết lập với một cuộc gọi đến SPFederationAuthenticationModule.SetPrincipalAndWriteSessionToken
để tính lại các xác nhận quyền sở hữu trên mã thông báo mà không cần đăng xuất người dùng hiện tại. Có cách nào để làm điều này không?
Một số nền tảng về lý do tại sao tôi yêu cầu này:
Chúng tôi sử dụng một vai trò & cung cấp thành viên tùy chỉnh cho authN/Z trên ứng dụng web tùy chỉnh SharePoint 2010 của chúng tôi. Không đi vào chi tiết về lý do tại sao (phức tạp) nhà cung cấp vai trò tạo ra tên vai trò được tạo động cho người dùng dựa trên trạng thái của người dùng trong cơ sở dữ liệu ứng dụng chính; các vai trò này đại diện cho quyền cho người dùng và được sử dụng bên trong SharePoint để xác định quyền truy cập của người dùng vào các trang web và tuyển tập site trong ứng dụng.
Có nhiều cách trong ứng dụng của chúng tôi để người dùng thay đổi quyền của họ, bổ sung hiệu quả vai trò mới thông qua nhà cung cấp vai trò, cấp cho người dùng quyền truy cập bổ sung trong ứng dụng. Vấn đề chúng tôi đang gặp phải là xác nhận quyền sở hữu dựa trên xác nhận quyền sở hữu mà chúng tôi buộc phải sử dụng trong SP2010 tính trước các quyền khi đăng nhập và mã hóa các quyền đó trong mã thông báo phiên - hiệu quả buộc chúng tôi yêu cầu người dùng đăng xuất và đăng nhập lại trước khi họ có thể có được quyền mới của họ. Điều này đang tạo ra tất cả các loại vấn đề khả năng sử dụng, do đó câu hỏi của tôi.
Có cách nào để lập trình lại mã thông báo phiên mà không cần đăng xuất người dùng không?
Hoặc chúng ta đang sủa cây sai? Trong vùng đất ASP.NET hạnh phúc bình thường của tôi, tôi sẽ sử dụng biểu mẫu Auth, tính toán ủy quyền ở mọi yêu cầu thay vì đăng nhập. Thật không may, đó dường như không phải là một tùy chọn trong SP2010, và tôi khá mắc kẹt với SharePoint tại thời điểm này. Có một số hành động khác mà chúng ta có thể theo đuổi không?
không chắc chắn rằng tôi hiểu vấn đề - từ những gì tôi thu thập theo http://msdn.microsoft.com/en-us/library/ee557572.aspx này bạn có thể tính toán lại các xác nhận quyền sở hữu bằng cách tạo một SecurityToken mới (cùng một người dùng/pw - ID khác nhau) ... đây là những gì bạn đang sau? nếu không xin vui lòng xây dựng ... – Yahia
@ Yahia Vâng, đây chính xác là những gì tôi theo sau.Nhưng việc khởi tạo SecurityToken yêu cầu mật khẩu của người dùng - điều mà tôi không chỉ nói dối. Tôi có thể hỏi người dùng về mật khẩu của họ, nhưng điều đó tương đương với việc đăng xuất và đăng nhập lại. Tôi có thể giữ mật khẩu trong phiên, nhưng điều đó sẽ không an toàn. Có phải là một cách để làm điều này mà không cần mật khẩu. – Randolpho
Bạn đã kiểm tra vào 'RenewToken' (xem http://msdn.microsoft.com/en-us/library/ms551886.aspx), sau đó là một cuộc gọi đến' ValidateToken'? NẾU điều đó không làm những gì bạn cần tôi nghi ngờ bạn sẽ phải viết riêng của bạn SecurityToken tùy chỉnh/nhà cung cấp vv hoặc giữ PW xung quanh trong bộ nhớ (mà tôi đồng ý là không tốt!). – Yahia