2012-11-12 6 views
3

메신저 REST API를 사용하여 현재 CakePHP를 사용하여 개발중인 메신저가 확실하지 않습니다. 인증을 구현하지 않았으며 메신저까지 거의 다 읽었습니다.api cakephp rest authentication

하지만 내가 무엇을해야하는지 잘 모르겠다.이 API는 웹 페이지와 모바일 앱이 노출 될 수 있도록 노출 될 것이지만 기본 인증 또는 다이제스트 인증 (CakePHP의 기본 옵션으로 제공)은 옵션,

나는 데이터베이스에서 사용자 이름과 암호를 확인하고 이미 설정된 ACL에 따라 권한을 부여해야한다는 것을 알고 있습니다. HMAC에 대해 읽었지만 완전히 이해하지 못합니다. 정당한 나 자신의 양이온 법은 토큰을 확인하는 것과 같은 것을합니까? 이 기사가 맞습니까? : http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/

그렇다면 어떻게 CakePHP 인증 방법에 대한 원칙을 구현합니까? HMAC를 사용하는이 인증 방법에 대한 플러그인이 있습니까?

OAuth 2.0을 사용해야합니까? 사용자 이름 & 비밀번호 로그인에 OAuth 2.0을 사용하는 것이 합리적입니까? 내가 너무 길을 잃은거야? 그렇게 잃어 버리지 않았다면, cakephp에 사용자 이름과 패스워드로 OAuth를 구현하는 방법을 설명해 주시겠습니까?

누군가, 제발,이 interweb 포럼을 서핑하는 사람, 저를 도와주세요. 예제 나 워크 플로우를 제공 할 수 있다면, 모든 것이 크게 감사 될 것입니다.

+0

달성하고자하는 것을 분명히 할 수 있습니까? 내 나머지 API에 대한 – domsom

+0

인증, 내 나머지 API에 대한 권한은 그들이 속한 그룹에 따라 권한을 부여하지만, 내가 그것에 대해 얼마나 많은 것을 읽었는지는 중요하지 않다. 나는 이것을 해내는 가장 좋은 방법을 얻지 못한다. – ixchel

답변

0

얼마나 많은 보안이 필요합니까? API는 대개 키가있는 클라이언트 응용 프로그램에서 액세스하므로 일반적으로 모든 (https) 요청과 함께 자격 증명을 전송할 수 있습니다 (POST 매개 변수로 암호화되므로 암호화됩니다). 적어도 이것은 가장 쉬운 해결책입니다. 세션, 토큰 등이 없어도 모든 요청마다 자격 증명을 확인하면됩니다. 자격 증명이 유효한 경우 이제 인증 된 '사용자'에게 요청 된 리소스에 대한 액세스 권한이 있는지 여부를 확인합니다.

고급 인증/권한 부여 방법은 개발 및 관리가 복잡해진다는 것을 기억하십시오. 이러한 시스템을 구현 한 경험이 없다면 구현 버그/문제로 인해 얻을 수있는 보안 이득을 쓸모 없게 될 것입니다.