1. API 원리 & SQL 기초 구문 살펴보기
오늘 강의에서는 간단한 네이버 홈페이지를 예제로 API의 기본 동작 원리에 대해 알아봅니다.
서버 API를 만들려면 실무자가 꼭 알아야 하는 SQL 필수 구문을 간단한 QUERY 함수 예제와 함께 살펴봅니다.
2. Apps Script로 나만의 서버 API 만들기
미리 작성된 구글 Apps Script 마스터 코드를 활용하여 나만의 서버 API를 만들고 배포하는 과정까지 단계별로 실습합니다.
배포한 서버 API를 사용하여 직접 서버에 데이터를 읽기/쓰기/삭제/변경하는 모든 과정을 단계별로 테스트합니다.
라이브 정보
회차
96회
방송일
2022년05월21일
카테고리
멤버쉽 라이브 강의
등급
Plus
커리큘럼
질문 & 댓글 5
스크립트
자막을 불러오는 중...
궁금한 점이 있는데요.
구글 스프레드시트 정보를 '누구나 볼 수 있도록 설정해야만' 엑셀 연동이 가능한 것으로 이해됩니다.
(보안 상의 이유로) 스프레드시트 내 정보가 외부에 공개되지 않으면서 엑셀로 연동하는 방법이 절실합니다 ㅜㅜ
방법이 있을지 여쭈어 봅니다!
감사합니다.
네 구글시트를 공유하는 특성상, 기본 공유기능으로는 보안문제를 해결할 수 없습니다.
그럴 경우, 가장 근본적인 해결책은 SQL 서버를 활용하는 것이나 서버 사용이 어려울 경우 구글시트의 앱스크립트를 활용해서 100% 완벽하게는 아니지만 일정부분 해결할 수 있습니다.
구글시트의 doGet(접근 요청시), 특정 보안 키값이 일치할 경우만 접근 가능하도록 제어하면 됩니다.
예를 들어, https://구글시트링크/?key=a93asldfk <- 와 같이 키를 넣어주면 됩니다.
관련 내용은 아래 링크를 확인해보세요. (key를 확인하는 과정은 직접 작성해야합니다.)
https://www.oppadu.com/%ec%97%91%ec%85%80-live-97%ea%b0%95/
SQL과 엑셀을 연동하는 방법은 아래 링크를 확인해보세요.
https://www.oppadu.com/%ec%97%91%ec%85%80-live-89%ea%b0%95/
궁금한 점이 있어 추가로 질문 드려요.
엑셀 하수라 ㅋ 이야기 주신 앱스크립트를 활용한 방법을 공부하고 있습니다.
그런데 문득 궁금한 점이 생겼습니다.
'보안 키값이 일치할 경우 접근이 가능하다'는 표현이 꼭 '(사람 등이 타이핑 하여) 직접 로그인을 해야한다'는 것으로 느껴지는데 맞나요?
그럼 엑셀 프로그램 스스로가 '직접 로그인 하는 행위'를 수행해야 할텐데 이를 구현할 방법이 있다는 것인가요?
아니면, 공개된 링크주소에 '/?key...'가 추가로 뒤이어 붙기만 하는 역할(공개된 링크주소가 더 길어지는 역할)을 하기 때문에, 기존의 공개된 구글시트와 액셀을 연동하는 방법과 결국 차이가 없게되는 것인가요.
이 경우, 스크립트를 적용하면 주소만 더 길어질 뿐 링크는 결국 공개되는 것이니 보안상 다를 것이 없게 느껴지는데요.
제가 이해한 게 맞나요 ㅜㅜ
엑셀 천민의 낯부끄러운 질문 들어주셔서 감사합니다.
네 말씀하신 내용이 맞습니다.
다만 로그인하는 것이 아니고, 해당 양식에 접근하기 위한 ID와 비밀번호 (또는 키값)이 있을 경우에만 데이터에 접근하도록 제한하는 방법입니다.
대표적으로 API를 사용할 때 https://api.com/?key=abc&password=aaa 이런 형태로 각 사용자를 구분하는 것과 동일한 방법입니다.
따라서 구글 시트에 사용자이름과 key 가 작성된 표를 하나 만든 후, key가 존재할 경우 접근 가능하거나, 사용자별로 다른 시트에 접근할 수 있도록 제한하는 방법입니다.
다만 이렇게 할 경우, 퍼포먼스에 영향이 있을 수 있기 때문에 사용자나 접속량이 많다면 구글시트대신 sql 클라우드 서버를 사용하는 것이 좋습니다.
참고로 아직 앱스크립트는 클라이언트쪽 ip 확인을 제공하지않기 때문에, ip별 접속 제한은 불가능합니다.