Tôi đang gặp khó khăn trong việc tìm kiếm thông tin về cách làm cho RavenDB hoạt động trên mạng. Trong cùng một mạng, tôi có thể có một cá thể của ứng dụng đang chạy và nó sẽ hiển thị dữ liệu từ RavenDB của tôi. Tuy nhiên, khi tôi cố gắng ghi dữ liệu, tôi nhận được ngoại lệ 401 trái phép.Truy cập mạng RavenDB
Cách chính xác để thiết lập RavenDB được truy cập qua mạng là gì?
Ngay bây giờ, tôi có điều này trong Raven.Server.exe.config, mà chỉ là một giải pháp ngắn hạn:
<add key="Raven/AnonymousAccess" value="All" />
Những gì tôi không hiểu, đó là trang web RavenDB nói để sử dụng một cái gì đó như thế này:
<connectionStrings>
<add name="RavenDb"
connectionString="Url=http://serverName:8080;user=user;password=password"/>
</connectionStrings>
Ok, đó là điều tuyệt vời cho ứng dụng đang chạy, nhưng làm cách nào để đặt máy chủ RavenDB cho phép người dùng và mật khẩu? Có phải đó chỉ là một cách sai lầm để làm điều đó (bằng cách nào đó thiết lập tệp cấu hình RavenDB để cho phép các thông tin đăng nhập đó)? Nếu đó là sai, làm thế nào tôi phải xác định thông tin đăng nhập ở phía máy chủ?
Chỉnh sửa: Dưới đây là các nỗ lực và kết quả của tôi:
Tôi đang chạy RavenDB bằng cách bấm đúp vào Raven.Server.exe.
Kịch bản 1
Khách hàng app.config:
<connectionStrings>
<add name="RavenDb" connectionString="Url = http://server:8080;domain=Xx;user=Xx\user;password=pw"/>
</connectionStrings>
DocumentStore Setup:
DocumentStore documentStore = new DocumentStore();
documentStore.ConnectionStringName = "RavenDb";
documentStore.Initialize();
Lưu Operation:
Session.Store(objectToSave);
Kết quả: "Máy chủ từ xa trả về lỗi: (401) Không được phép".
Kịch bản 2
Khách hàng app.config:
<add key="databaseUrl" value="http://server:8080"/>
DocumentStore Setup:
string databaseUrl = ConfigurationManager.AppSettings["databaseUrl"];
DocumentStore documentStore = new DocumentStore();
documentStore.Url = databaseUrl;
documentStore.Initialize();
Lưu Operation:
Session.Store(objectToSave);
Kết quả: "Máy chủ từ xa trả về lỗi: (401) Không được phép". Ngoại lệ bên trong: "Tên chính của mục tiêu không chính xác"
ahhhhh ... do đó, nó chỉ là ủy quyền cho thư mục Data. Tôi không cần phải chỉ định người dùng trong cấu hình máy chủ. Các kết nối máy khách có thể chỉ định người dùng trong cấu hình, và miễn là người dùng đó có quyền truy cập vào thư mục Dữ liệu ... Tôi sẽ thử điều đó. –
Vâng, đúng vậy. –
Đã thử hai cách tiếp cận. Xem các kịch bản/chỉnh sửa ở trên. Tôi đang thiếu gì? –