사용자가 데이터베이스에서 데이터를 검색 할 수 있도록 데이터베이스에 대한 간단한 읽기 전용 API를 구축했습니다.
예를 들어 URL " http : // xxxxx / getAllProfiles "는 데이터베이스에 저장된 모든 프로필을 포함하는 JSON 결과를 반환합니다.
API는 읽기 전용이며 일부 'select'SQL 쿼리로만 구현됩니다. 따라서 사용자는 API를 통해 데이터베이스의 데이터를 수정할 수 없습니다.
우리 회사는 온라인에서 임의의 봇이 API를 악용 할까봐 걱정하고 있으며이 API에 대한 보안 메커니즘을 구축해달라고 요청했습니다. (키가 없거나 누군가가 URL에 접근하는 것을 방해하는 무언가가 있으면 우리 서버를 너무 많이 방문하게 될까봐 걱정됩니다. 작은 서버입니다.)
PHP를 사용하여 구현할 수있는 가장 간단한 보안 메커니즘은 무엇입니까? (도움이된다면 API 용으로 Slim, Ubuntu 및 Apache가 실행되는 Amazon EC2 서버를 사용하고 있습니다.) 가급적이면 서버 또는 클라이언트 측에서 데이터베이스를 사용하지 않고도 구현할 수 있습니다.
명확하지 않은 사항이 있으면 알려주세요. 명확히하겠습니다.
감사.
추가 : 의견 주셔서 감사합니다. 데이터베이스를 사용하지 않는 방법이 있습니까? 키를 생성하는 현명한 방법처럼 ... 사용자가 도메인을 입력 할 수있는 페이지를 제공하고 알고리즘이이 도메인을 키로 변환 할 것이라고 생각합니다. 그런 다음 각 요청에 대해 사용자는이 키를 포함해야합니다. 서버는 요청 헤더에서 도메인을 가져와 동일한 알고리즘을 사용하여 다시 계산합니다. 두 계산 된 키가 일치하면 요청이 수락됩니다. 나는 이것이 최소한의 수준에서 처음에 도메인을 입력하고 키를 얻을 누군가가 있어야 함을 보장하므로 임의의 봇을 필터링합니까? 이것이 안전한지 확실하지 않습니까? 하지만 뭔가 걸러 낼 수있는 것처럼 들립니다.
나는 웹 개발에 대해 거의 알지 못할 때이 질문을 게시했습니다. REST API를 보호하는 방법에는 여러 가지가 있습니다 (예 : JWT, 쿠키, 기본 인증 등).
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다