2015-06-19 18 views
5

Vì vậy, đối với trang web Sitecore của tôi, tôi đang cố gắng để làm cho nó để người dùng đăng nhập và không thể sử dụng tài khoản extranet \ Annoymous. Tôi đã đọc và cố gắngSitecore - Yêu cầu đăng nhập

Implementing Sitecore Extranet login on a website

Nhưng tôi đã bỏ lỡ một cái gì đó, các hình thức xác thực asp có vấn đề về phía đó nó chuyển bạn về trang gốc và do đó bỏ qua tùy chọn của người sử dụng máy tính để bàn hoặc Page Editor.

Phần mà tôi thất vọng là dường như logic này đã được tích hợp vào SiteCore. Ví dụ: nếu tôi cố gắng truy cập http://site/sitecore/shell và tôi không đăng nhập vào trang web, hãy chuyển hướng tôi đến trang đăng nhập. Vậy làm cách nào tôi có thể bật tính năng này cho toàn bộ trang web của mình.

CẬP NHẬT

My An ninh Biên tập viên trông như thế này enter image description here enter image description here

Thậm chí nếu tôi Unprotect đối tượng Sitecore và từ chối truy cập đến đối tượng chính tôi vẫn có thể nhận được vào trang web. enter image description here

Trong web.config phần Sites của tôi trông như thế này

<sites> 
    <site name="shell" virtualFolder="/sitecore/shell" physicalFolder="/sitecore/shell" rootPath="/sitecore/content" startItem="/home" language="en" database="core" domain="sitecore" loginPage="/sitecore/login" content="master" contentStartItem="/Base" enableWorkflow="true" enableAnalytics="false" analyticsDefinitions="content" xmlControlPage="/sitecore/shell/default.aspx" browserTitle="International" htmlCacheSize="2MB" registryCacheSize="3MB" viewStateCacheSize="200KB" xslCacheSize="5MB" disableBrowserCaching="true" /> 
    <site name="login" virtualFolder="/sitecore/login" physicalFolder="/sitecore/login" enableAnalytics="false" database="core" domain="sitecore" disableXmlControls="true" /> 
    <site name="admin" virtualFolder="/sitecore/admin" physicalFolder="/sitecore/admin" enableAnalytics="false" enableWorkflow="true" domain="sitecore" loginPage="/sitecore/admin/login.aspx" /> 
    <site name="service" virtualFolder="/sitecore/service" physicalFolder="/sitecore/service" /> 
    <site name="modules_shell" virtualFolder="/sitecore modules/shell" physicalFolder="/sitecore modules/shell" rootPath="/sitecore/content" startItem="/home" language="en" database="core" domain="sitecore" content="master" enableAnalytics="false" enableWorkflow="true" /> 
    <site name="modules_website" virtualFolder="/sitecore modules/web" physicalFolder="/sitecore modules/web" rootPath="/sitecore/content" startItem="/home" language="en" database="web" domain="extranet" allowDebug="true" cacheHtml="true" /> 
    <site name="website" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content" startItem="/Base" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" loginPage="/sitecore/login/Default.aspx" /> 
    <site name="scheduler" enableAnalytics="false" domain="sitecore" cacheMedia="false" /> 
    <site name="system" enableAnalytics="false" domain="sitecore" /> 
    <site name="publisher" domain="sitecore" enableAnalytics="false" enableWorkflow="true" /> 
</sites> 

Tôi biết người mà tôi đang đăng nhập như vì tôi thêm này vào trang chủ của tôi

<asp:Label ID="Id" runat="server"><%=HttpContext.Current.User.Identity.Name%></asp:Label> 

Trả lời

4

Giải pháp là để thêm

requireLogin="true" 

đến các trang web "trang web" tag

<site name="website" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content" startItem="/Base" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" requireLogin="true" loginPage="/sitecore/login/Default.aspx" /> 
+0

Tôi sẽ thêm vào điều này sau khi bạn từ chối Đọc Quyền để nói mục Trang chủ cho extranet \ Anonymous người dùng. Bạn cần xuất bản cơ sở dữ liệu chủ lên web để làm việc này. – bdoshi

1

Trong Sitecore an ninh biên tập viên , từ chối quyền truy cập đọc vào mục Trang chủ cho extranet \ Anonymous và cấp quyền truy cập cho người dùng/vai trò cụ thể của bạn. Cũng chỉ định trang Đăng nhập trong Web.config để người dùng được chuyển hướng khi phiên được xác thực không tồn tại.

+0

Âm thanh dễ dàng nhưng điều đó dường như không được làm việc tôi thêm chi tiết hơn cho câu hỏi làm chắc chắn tôi hiểu bạn một cách chính xác – Mike

Các vấn đề liên quan