이 Codelab 정보
1. 시작하기 전에
서명된 삽입은 별도의 Looker 로그인을 요구하지 않고도 사용자에게 삽입된 Look, 시각화, Explore 또는 대시보드를 비공개로 표시하는 방법입니다. 대신 사용자가 자체 애플리케이션을 통해 인증됩니다.
서명된 삽입은 iframe에서 사용할 특수한 Looker URL을 만들어 시작합니다. 이 URL에는 공유하려는 정보, 시스템의 사용자 ID, 해당 사용자에게 부여할 권한이 포함됩니다. 그런 다음 Looker가 제공하는 보안 비밀 키로 URL에 서명합니다.
기본 요건
- 실행 중인 Looker 인스턴스가 있어야 합니다.
- Looker 인스턴스의 관리자여야 합니다.
학습할 내용
- 서명된 삽입을 허용하도록 Looker 인스턴스를 설정하는 방법
- 보안 비밀 키를 생성하는 방법
- 서명된 삽입 URL에 포함하기 위해 수집해야 하는 정보
- 서명된 삽입 URL을 생성하는 방법
- 애플리케이션에 삽입된 항목을 추가하는 방법
2. 적절한 Looker 호스팅
일부 브라우저에서는 서드 파티 쿠키를 차단하는 보안 정책을 기본값으로 사용하므로 서명된 임베딩이 작동하지 않습니다. 이 Codelab에서는 브라우저에서 서드 파티 쿠키를 일시적으로 허용하는 것이 이 문제를 해결하는 가장 간단한 방법입니다.
프로덕션 설정에서는 다음 전략 중 하나를 선택하여 서드 파티 쿠키를 처리해야 합니다.
- Looker 인스턴스와 서명된 삽입을 사용할 애플리케이션을 동일한 도메인에 배치합니다. 예를 들어 Looker 인스턴스는
looker.mycompany.com
에 있고 서명된 삽입 사이트는analytics.mycompany.com
에 있을 수 있습니다. - 서드 파티 쿠키를 차단하는 브라우저가 여러 도메인에서 인증할 수 있도록 쿠키 없는 삽입 기능을 사용 설정합니다. 이 옵션을 사용하려면 Looker의 쿠키 없는 삽입 문서 페이지에 자세히 설명된 대로 추가 구성이 필요합니다.
3. 보안 비밀 키 생성
서명된 삽입 URL을 만들려면 Looker의 보안 비밀 키가 필요합니다. 방법은 다음과 같습니다.
- Looker의 관리 섹션에 있는 삽입 페이지로 이동합니다.
- SSO 인증 삽입 드롭다운에서 사용 설정됨을 선택한 다음 업데이트를 선택합니다.
- 삽입 보안 비밀 섹션에서 보안 비밀 재설정 버튼을 선택하여 삽입 보안 비밀을 생성합니다.
보안 비밀을 재설정하지 않고는 Looker에서 보안 비밀을 가져올 수 없으므로 보안 비밀을 안전한 위치에 복사해 두세요. 키를 재설정하면 이전 키를 사용한 모든 삽입이 중단됩니다.
4. 서명된 삽입 URL에 대한 입력 수집
서명된 삽입 URL을 만들려면 다음 정보를 수집해야 합니다.
표시할 데이터의 URL
삽입하려는 Look, Explore, 쿼리 시각화 또는 대시보드의 URL을 가져옵니다. 그런 다음 도메인을 삭제하고 경로 앞에 /embed
을 배치합니다.
예를 들어 https://instance_name.cloud.looker.com/looks/4
은 /embed/looks/4
가 됩니다.
또는 https://instance_name.cloud.looker.com/explore/my_model/my_explore
이 /embed/explore/my_model/my_explore
이 됩니다.
삽입된 사용자에게 부여할 권한
삽입된 사용자에게 부여할 권한을 선택합니다. 서명된 삽입과 관련된 권한은 Looker의 서명된 삽입 문서 페이지에서 확인할 수 있습니다.
이 Codelab에서는 다음 권한이 최소한의 목록일 수 있습니다.
access_data
see_lookml_dashboards
see_looks
see_user_dashboards
explore
삽입된 사용자의 콘텐츠 탐색 및 저장 기능을 테스트하려면 다음 사항도 고려해 보세요.
save_content
embed_browse_spaces
embed_save_shared_space
삽입된 사용자에게 부여할 모델 액세스 권한
삽입된 사용자가 액세스할 수 있도록 할 Looker 모델을 선택합니다. 최소한 사용자에게 표시하기로 선택한 Look, Explore, 쿼리 시각화 또는 대시보드의 기본 모델에 대한 액세스 권한이 있어야 합니다.
삽입된 사용자에게 부여할 사용자 속성
삽입된 사용자에게 부여할 Looker 사용자 속성을 선택합니다(있는 경우). 이 Codelab에서는 사용자 속성을 추가하지 않아도 됩니다.
삽입된 사용자에게 부여할 그룹
사용자가 속해야 하는 그룹 ID(그룹 이름 아님)를 결정합니다(존재하는 경우). 이 Codelab에서는 그룹을 추가하지 않아도 됩니다.
회사 사용자 ID 및 그룹
Looker 서명 임베드 URL을 사용하려면 삽입된 Looker 요소를 보는 애플리케이션의 각 사용자에 대한 고유 식별자를 제공해야 합니다. Looker에서는 이를 '외부 사용자 ID'라고 하며 문자열일 수 있습니다.
관련된 경우 '외부 그룹 ID'를 제공할 수도 있습니다. 이는 애플리케이션에서 사용자가 속한 그룹의 고유 식별자입니다.
5. URL 생성 스크립트 선택
올바른 서명된 삽입 URL을 작성하려면 코드를 사용해야 합니다. 그래야 보안 비밀 키로 URL을 올바르게 인코딩하고 기타 보안 관련 항목을 생성할 수 있습니다.
다행히 Looker의 looker_embed_sso_examples GitHub 저장소에서 다양한 프로그래밍 언어로 된 여러 샘플 스크립트를 사용할 수 있습니다. 자신과 관련된 스크립트를 선택하고 개발 환경에 복사합니다.
6. 데이터를 입력하고 스크립트 실행
선택한 URL 생성 스크립트에는 이전에 수집한 모든 정보를 배치할 수 있는 변수 또는 객체가 있으며, 해당 정보가 표시되는 방식에 관한 예도 있습니다.
스크립트 이름 | 입력의 대략적인 행 수 |
| 15 - 28 |
| 18~35세 |
| 193~202 |
| 87~104 |
| 103~111 |
| 88~101명 |
| 14~27 |
예시를 수집한 데이터로 바꾼 후 스크립트를 실행하여 서명된 삽입 URL을 생성합니다. 다음 단계를 위해 URL을 기록해 둡니다.
7. URL 테스트
최종 URL을 테스트하려면 Looker 관리 섹션의 삽입 페이지에 있는 삽입 URI 검사기에 붙여넣습니다. 이 기능으로 생각한 데이터와 권한이 올바르게 설정되었는지는 알 수 없지만 인증이 제대로 작동하는지 검증할 수 있습니다.
8. iframe에 URL 삽입
마지막으로 생성한 URL을 iframe
의 src
속성에 추가하여 Look, Explore, 쿼리 시각화 또는 대시보드를 애플리케이션에 삽입합니다. 해당 iframe을 애플리케이션 또는 테스트 환경에 배치합니다.
원하는 경우 Looker의 삽입된 JavaScript 이벤트를 활용하여 JavaScript를 사용하여 iframe과 상호작용할 수 있습니다.
9. 추가 정보
삽입된 사용자가 원하는 데이터 공개 상태 및 권한으로 제한되도록 Looker의 서명된 삽입 기능을 신중하게 구성해야 합니다. 다음 사항을 고려하세요.
- Looker의 서명된 임베딩 문서 페이지에서는 서명된 임베드 URL을 생성하는 방법과 사용 가능한 모든 구성 옵션에 관한 자세한 내용을 제공합니다.
- Looker의 삽입된 분석을 위한 보안 권장사항 문서 페이지에서는 서명된 삽입을 안전하게 구성하는 방법을 안내합니다.
- 서명된 삽입은 Looker 고객이 서로 다른 회사 또는 그룹의 클라이언트가 서로 알지 못하도록 하면서 자신의 클라이언트에게 데이터를 제공하는 데 자주 사용됩니다. 이 시나리오에서는 Looker를 폐쇄형 시스템('멀티테넌트 설치'라고도 함)으로 구성하는 것이 좋습니다.
- 서명된 삽입 기능은 Looker API를 통해 사용할 수 있습니다.