슬림 Microframework와 함께 RESTful 웹 서비스를 작성하고 MySQL 데이터베이스 (select query)에서 데이터를 읽는 데 GET을 사용하고 데이터베이스에서 행을 삽입/업데이트/삭제하기 위해 POST/PUT/DELETE를 사용합니다.슬림 프레임 워크가있는 PHP RESTful 웹 서비스, 무국적자에 대한 인증이 필요합니까?
이제 모든 사람들이 데이터베이스에 데이터를 쓰거나 삭제할 수 있다면 큰 문제가되지 않겠습니까? 하지만 어떻게 이것을 막을 수 있을까요? REST의 보안 목표 명세서가 상태 이전의 약자라고 생각했기 때문에 (웹 서비스가 상태를 유지하지 못함) 로그인 상태와 모순되는 상태입니다. 그리고 만약 내가 데이터베이스에 쓸 수있는 클라이언트와 일부 로그인 데이터를 전달할 수 나쁜 사람이 logindata를 잡아와 가짜 요청을 예를 들어 모든 항목을 삭제할 수 없습니까?
정상적인 방법은 무엇일까? 내가 발견 한 Slim Framework 예제는 항상 경로 예제를 보여 주지만 보안 방법은 제시하지 않습니다.
슬림 프레임 워크에서 필요한 것을 구현할 수있는 기회가 있습니까? 가능한 한 쉬운 것이어야하며 요청은 인증 또는 이와 유사한 방식으로 신속하게 대응되어야합니다. 암호와 같은 민감한 데이터는 없습니다. cURL 명령 줄 도구를 사용하는 모든 사람이 모든 행이나 일을 삭제할 수있는 것은 아닙니다.
누군가가 내게 무엇을 설명하고/또는 몇 가지 예를들 수 있다면 좋을 것입니다. 또한 요청을 보낼 수있는 클라이언트에서 변경할 필요가있는 사항을 알아야합니다.
감사합니다.
나는이가 apiKey에를 사용하여 호출되어 있는지 알아 냈어. 그러나 Slim 프레임 워크의 기본 솔루션을 찾지 못했습니다. 대신 프레임 워크 제작자의 git repo를 찾았는데, 여기에는 예를 들어 HTTPbasicAuth라고하는 일부 Slim Extras가 있습니다. 찾을 수 있습니다 : https://github.com/codeguy/Slim-Extras/tree/master/Middleware 이제 내 질문은, 대신이 키를 사용할 수있는 경우 또는 데이터베이스에 삽입/업데이트 권한이 없습니다. 악의적 인 사람이 인증 데이터 (또는 키)와 가짜 요청을 여전히 스니핑하지 못했습니까? 감사. –
http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/ – Rawkode
이 링크를 이용해 주셔서 감사합니다. 그러나 슬림 프레임 워크를 사용하는 것은 아닙니다. 위에서 물어 본 HTTPbasicAuth는 어떻습니까? Slim에서 실제로 뭔가를 찾고 있지만, 내가 찾은 것이 유용 할 지 확실하지 않습니다. 다시 Thx –