마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

구글 API 에 관하여 궁금한게 있습니다.

0 추천
안녕하세요.

선배님들..

다름이 아니라 구글 API를 사용함에 있어 궁금한 점이 생겨 이렇게 글을 남기게 되었습니다.

유투브 API를 사용하려고 샘플 프로젝트를 받으니 디벨로퍼 키를 변수로 넣어야 하더라구요.

그래서 가이드를 보고 https://console.developers.google.com/project/ 이곳에 가서

프로젝트를 만들고 API키를 생성하려고 하는데 궁금한게 있습니다.

API키를 생성할때 종류가 서버키, 브라우저키, 안드로이드키, IOS키

이렇게 종류가 있더라구요.

안드로이드키로 하니 무슨 keytool로 커맨드 명령어를 쳐서 어떤 값과 패키지네임을 입력하라 합니다.

이것도 무엇이고 왜 하는지 잘 모르겠고,

위의 서버키,브라우저키, 안드로이드키, IOS키

각각 왜이렇게 나누어져 잇는지 궁금합니다.

브라우저키와 안드로이드키 두개를 만들었는데요.

만들때 입력하란값은 암거나 입력했습니다.;;;몰라서요.

그래서 브라우저키로 테스트를 해보니 정상동작하더군요.

다시 안드로이드키로 테스트를 해보니 이것도 정상동작하네요.

API키를 발급 받을때 브라우저키와 안드로이드키 차이점이 무엇인가요?

둘중에 아무거나 써도 상관이 없는건가요?
갸아악 (21,260 포인트) 님이 2014년 7월 9일 질문
브라우저키는 웹페이지에서 사용하고, 안드로이드키는 앱에서 사용하지 않을까 싶습니다. 둘 다 되는것은 인증서버가 같아서 그럴려나요.. 하지만 제공하는 메소드의 차이가 있을수도 있고, 사용 횟수의 차이가 있을수도 있고, 여러 변수가 있지 않을까싶습니다. 정확한 답이 아니니 다른분께서 확답을...^^;

1개의 답변

+2 추천
 
채택된 답변
API키를 발급받았다는 것은 발급자가 이 API 를 사용할 수 있다는 허가이죠.

그런데 단순한 스트링으로만 이 키가 이루어져 있다면

혹시 다른사람이 이 스트링을 복사하였을 때 원래 발급받은 사람처럼 사용할 수 있게 되겠죠.

이런 부정한 사용을 방지하기 위해서 이 API키를 사용할 수 있는 환경을 최대한 제한하는거에요.

서버키를 예로 들면, 서버의 경우 특정한 고정 IP 를 주소를 가지기 때문에

허용 IP리스트를 등록해서 이 API키를 허용IP주소에서만 사용하도록 제한할 수 있고요,

브라우저키의 경우, 웹앱의 경우 도메인주소를 가지기 때문에

허용하는 도메인주소를 등록해서 그 도메인주소에서만 사용하도록 API키를 제한할 수 있고요,

안드로이드키의 경우 마켓등록할 때 사인하는 키와 패키지네임으로 고유한 해쉬값을 만들 수 있는데

(이게 keytool을 이용해서 만들어내는 값이에요)

이 값을 등록함으로써 특정 앱에서만 이 API키를 사용할 수 있도록 제한하는거죠
b22n (22,940 포인트) 님이 2014년 7월 9일 답변
갸아악님이 2014년 7월 9일 채택됨
정말 친절한 답변 감사드립니다.
진짜 감사드립니다^^
궁금증이 해소되었어요!
...