내가 작업하고있는 iPhone 앱에는 제 3 자 사이트의 API에 대한 GET 호출이 필요합니다. 3D 파트 사이트는 SSL을 제공하지 않으며 API 키가 GET 요청의 쿼리 문자열에 있어야합니다. 이것을 보호하는 가장 좋은 방법은 무엇입니까? 내 아이폰 앱이 내 서버와 대화 할 수 있다는 것을 알고 있고 내 서버가 요청을 보내지 만 가능한 경우이를 피하고 싶다. 또 다른 질문은 이것도 큰 문제인 경우입니다. 어쨌든 데이터 만 가져 오는 경우 API 키로 무엇을 할 수 있습니까?타사의 API 키를 숨기시겠습니까?
답변
요 전날 Google지도 API 키와 관련하여 similar question에 문의했습니다.
내 전화 허용치를 사용하는 사람에 대해 걱정할만한 가치가 있는지 생각했습니다.
요약은 API가 이러한 방식으로 사용되도록 고안되었으며 API에 대해 할 수있는 일이 많지 않다는 점을 강조했습니다.
API에서 API 키 (Google지도에서 사용)를 사용하여 리퍼러 헤더로 도메인 이름을 사용해야하는 경우 어느 정도 방어벽이 될 것입니다.
차원 일부 사이트는 SSL 을 제공하고 API 키를 얻을 요청의 쿼리 문자열에있을 필요하지 않습니다.
보안을 유지할 방법이 없습니다. get 요청은 인터넷을 통해 나가야하며, SSL을 사용하지 않으므로 API 키가 추출됩니다.
에 대한 API 키가 인 것을 해결해야합니다. API 키가 응용 프로그램을 식별하기위한 것이라면이 동작은 문제가 아니므로 걱정할 필요가 없습니다. 귀하 또는 귀하의 컴퓨터를 식별하기위한 것이라면 이는 정상적인 상태가 아닙니다. 타사 사이트에 연락하여 사용자 키를 생성하거나 요구 사항을 피할 수있는 약정을 준비해야합니다.
실제로 장치와 웹 서비스 끝점 사이에 패킷 수신기를 설치할 수 있기 때문에 보안을 유지할 수 없습니다. 단순히 흐르는 바이트를 살펴보십시오. 통신 채널이 암호화되어 있지 않으면 토스트가됩니다.
OWN 프록시 서버를 만드는 방법이 있습니다. 해당 서버는 API 키를 사용하여 엔드 포인트 서비스와 통신합니다. 그러면 기기가 서버와 통신하게됩니다 (원하는 경우 서버와 모든 기기 사이에 채널을 확보 할 수도 있습니다. 모든 기기는 서버에 달려 있습니다).
한 가지 제안은 중간에있는 프록시 서비스를 만드는 것입니다. 따라서 앱이 서버를 호출하고 API를 호출하고 서버에서 클라이언트로 릴레이 된 결과를 반환합니다. 이를 통해 API 키를 보호 할 수있을뿐 아니라 향후 투명한 사용을 고려하거나 공급자를 변경할 수 있습니다.
- 1. GIT에 heroku의 API 키를 등록하십시오.
- 2. 안드로이드에서 구글 API 키를 생성
- 3. Django_compressor CSS를 숨기시겠습니까?
- 4. NSFileManager : 폴더를 숨기시겠습니까?
- 5. Java WebStart의 팝업로드를 숨기시겠습니까?
- 6. BlackBerry에서 UiApplication 아이콘을 숨기시겠습니까?
- 7. xcode 앱의 항목을 숨기시겠습니까?
- 8. 정적 방법을 숨기시겠습니까?
- 9. Python 스크립트에서 콘솔을 숨기시겠습니까?
- 10. 타사의 HTML 메뉴를 내 응용 프로그램에 통합
- 11. 업데이트 타사의 .config 변환이 설치 프로그램에서 제공
- 12. 타사의 erlang 응용 프로그램을 관리하는 방법은 무엇입니까?
- 13. 안드로이드에 API 키를 저장하는 것만으로도 충분합니까?
- 14. 올바른 Google지도 API 키를 얻는 방법
- 15. Google SOAP API 키를 얻을 수있는 방법
- 16. Yahoo API 키를 얻기위한 입력란에는 무엇을 입력해야합니까?
- 17. .NET 응용 프로그램에서 API 키를 보호하는 방법
- 18. 어떤 Google Maps API 키를 개발에 사용해야합니까?
- 19. Google지도를 퍼가기는하지만 핀의 라벨을 숨기시겠습니까?
- 20. div를 숨기지 않고 div를 숨기시겠습니까?
- 21. 타사의 열거 형을 asmx를 통해 어떻게 노출시킬 수 있습니까?
- 22. DataTables 플러그인을 사용하여 특정 행을 숨기시겠습니까?
- 23. 초기로드 화면에서 상태 표시 줄을 숨기시겠습니까?
- 24. 백그라운드에서 Android 음성 인식 활동을 숨기시겠습니까?
- 25. 10 초 동안 다운로드 링크를 숨기시겠습니까? js
- 26. `bzr status` : 알 수없는 파일을 숨기시겠습니까?
- 27. "인터넷 다운로드 관리자"눈에서 URL 다운로드를 숨기시겠습니까?
- 28. Cocoa/Carbon에서 마우스 커서를 전체적으로 숨기시겠습니까?
- 29. JQuery의 대안은 프로그램을 숨기시겠습니까? 또는 Jquery 업데이트?
- 30. Firefox 숨겨진 개체 버그 해결 방법을 숨기시겠습니까?
내 신청서를 확인하는 것입니다. – SonnyBurnette
"API 키가 애플리케이션을 식별하기위한 것이라면이 동작은 문제가 아니므로 걱정할 필요가 없습니다." 다른 사람들이 응용 프로그램으로 포즈를 취할 수 있다면 많은 스팸을 보내고 서버에 과부하를 걸면 응용 프로그램이 금지 될 수 있습니다. 또한 응용 프로그램을 안정적으로 식별하지 못하면 처음부터 API 키의 요점은 무엇입니까? – user102008