2010-05-28 36 views
14

Tôi là tổng cộng mới trong khu vực oAuth và đã thiết lập DotNetOpenAuth để thiết lập nhà cung cấp dịch vụ oAuth. Mẫu được cung cấp trong bản tải xuống DotNetOpenAuth khá khó hiểu đối với tôi ... có thể là tôi mới làm quen với công cụ này. Có một trang mặc định tạo cơ sở dữ liệu và điền vào cơ sở dữ liệu. Bây giờ tôi duyệt đến login.aspx và nó yêu cầu tôi để mở một openid, thực sự tôi muốn sử dụng DNN (mà thực hiện DotNetOpenAuth) và tôi muốn sử dụng những thông tin đăng nhập trên một trang web khác sẽ là người dùng oAuth. Ai đó có thể giải thích cách kiểm tra nhà cung cấp dịch vụ oAuth trong các mẫu của DotNetOpenAuth không?Dotnetopenauth oAuth Lời giải thích của nhà cung cấp dịch vụ

+0

bạn muốn sử dụng xác thực mở cho trang web có liên quan đến .net? –

+1

có, tôi muốn làm cho nhà cung cấp trang web của tôi và một trang web khác trong JSF trở thành khách hàng của trang web. Tuy nhiên, vấn đề chính của tôi là hiểu dịch vụ Nhà cung cấp dịch vụ oAuth của DotNetOpenAuth. Tôi không thể tìm ra cách nó được cho là hoạt động và dòng chảy của nó là gì. Tôi đã thử nghiệm mẫu người tiêu dùng DotNetOpenAuth oAuth và đã làm việc trước đó. nhưng tôi không biết làm thế nào để làm cho trang web của tôi một dịch vụ nhà cung cấp oAuth – ria

Trả lời

12

Bạn đã tình cờ gặp phải mẫu tồi tệ nhất có trong DotNetOpenAuth. Xin lỗi vì điều đó. Bạn có thể thấy rằng OpenID project templates trình bày ý tưởng đơn giản và thực tế hơn về cách thiết lập Nhà cung cấp dịch vụ OAuth.

Mẫu bạn đang làm việc bây giờ là nhà cung cấp dịch vụ cho thấy dịch vụ WCF sử dụng OAuth, vì vậy có một số phức tạp trong mẫu sẽ không có cho bạn nếu bạn không sử dụng WCF. Đây là những gì bạn cần phải làm để có được mẫu đi mặc dù:

  1. Sửa đổi tập tin Default.aspx.cs gốc của mẫu để thêm dữ liệu vào cơ sở dữ liệu mới cho OpenID của riêng bạn và gây ra mẫu để tái tạo cơ sở dữ liệu của nó HOẶC chỉ cần thêm dữ liệu thô vào cơ sở dữ liệu sau khi mẫu tạo cơ sở dữ liệu riêng.
  2. Sử dụng mẫu OAuthConsumer để thử truy cập dữ liệu trên mẫu OAuthServiceProvider. Hãy chắc chắn kiểm tra ít nhất một hộp kiểm cho những phạm vi mà bạn đang xin phép.
  3. SP sẽ nhắc bạn đăng nhập. Hãy tiếp tục và làm như vậy bằng cách sử dụng OpenID mà bạn đã thêm dữ liệu vào cơ sở dữ liệu.
  4. SP sẽ hỏi bạn có đồng ý chia sẻ dữ liệu của bạn với mẫu người tiêu dùng hay không. Nói có.
  5. Người tiêu dùng sẽ cho biết họ đã nhận được ủy quyền và cung cấp cho bạn một số nút truy vấn dữ liệu người dùng tại SP.

Điều này nên hoạt động. Thêm nhận xét vào câu trả lời này nếu không và tôi sẽ chỉnh sửa câu trả lời này cho đến khi chúng tôi nhận được câu trả lời đúng. :)

Bây giờ liên quan đến thông tin đăng nhập DNN của bạn - không có vấn đề gì cả. Như bạn có thể biết, OAuth và OpenID là trực giao với nhau, vì vậy bạn chỉ có thể chuyển đăng nhập OpenID tại SP cho thông tin đăng nhập DNN và SP sẽ hoạt động tốt - mặc dù kết hợp dữ liệu người dùng trong cơ sở dữ liệu khóa học sẽ yêu cầu bất cứ công việc nào DNN yêu cầu.

+0

cảm ơn rất nhiều ... bệnh kiểm tra nó và cho bạn biết. Tôi thực sự đánh giá cao câu trả lời chi tiết của bạn. – ria

+0

@Andrew, bạn có một YahooConsumer của DotNetOpenAuth không? –

+1

Chưa. Xin vui lòng đóng góp một. –

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