사용자를위한 몇 가지 OAuth 공급자 (Google, Facebook, Twitter, MS Live)를 사용하는 MVC 4 웹 사이트 (http://myWebsite.com)가 있습니다. 로그인 - DotNetOpenAuth 라이브러리를 사용합니다.하위 도메인의 API 보안 - OAuth 공급자를 사용하여 로그인 한 사용자
또한 하위 도메인 (http://api.myWebsite.com)에 API가 있습니다.
사용자가 레코드를 업데이트하려면 해당 레코드가 변경 될 수있는 권한이 있는지 (권한 있음) 확인해야합니다.
그렇다면 하위 도메인의 API에서 사용자를 인증하는 가장 좋은 방법은 무엇입니까?
나는 HTTP 요청 헤더의 API에 사용자의 인증 토큰을 추가 할 수 있습니다, 그리고 나는 두 가지 옵션이 생각 :
내 생각은 지금까지 다음 사항을 수반한다.
i) 웹 사이트에서 모든 사용자 권한을 검사하고 토큰을 보내 사용자에게 권한이 있는지 묻는 메소드를 만듭니다.
ii) DotNetOpenAuth dll을 API 솔루션에 추가 한 다음 API 메소드에 액세스하는 데 필요한 역할을 간단하게 꾸밀 수 있습니다. 이게 효과가 있니?
세 번째 옵션은 업데이트 된 레코드를 웹 사이트에 다시 게시하고 인증을 실행 한 다음 데이터가 API로 전송되도록 전달하지만이 경우 냄새가 나는 것으로 보입니다.
나는 분명히 여기에 명백한, 따라서 게시물이 누락되었다고 확신한다.