이 문서에서는 Fleet 엔진이 엔진 간 정보 교환을 보호하는 방법을 설명합니다. Fleet Engine 시스템의 세 가지 기본 환경인 백엔드 서버 Fleet Engine 서버, 클라이언트 애플리케이션 및 웹사이트에 액세스할 수 있습니다.
Fleet Engine은 최소 권한의 원칙을 사용하여 다음과 같은 두 가지 기본적인 방법으로 보안을 관리합니다.
애플리케이션 기본 사용자 인증 정보(ADC): 서버 간 통신과 같이 권한이 높은 환경에 사용합니다. 백엔드 서버가 차량과 이동 경로를 만들고 Fleet Engine에서 관리할 때 사용됩니다. 자세한 내용은 애플리케이션 기본 사용자 인증 정보를 참고하세요.
JSON 웹 토큰(JWT): 스마트폰 및 브라우저에서 실행되는 클라이언트 애플리케이션과 같이 신뢰도가 낮은 환경에 적합합니다. Fleet Engine에서 차량 위치를 업데이트하는 등 권한이 낮은 작업을 실행하는 데 사용됩니다.
신뢰도가 낮은 환경에 필요한 JWT는 안전하게 보호하려면 백엔드 서버에 있는 Fleet Engine 관련 추가 청구 자세한 내용은 JSON 웹 토큰.
예를 들어 운전자 앱이 있는 경우 운전자는 앱을 통해 Fleet Engine의 데이터에 액세스합니다. 앱은 백엔드 서버에서 가져온 JWT를 사용하여 인증됩니다. 포함된 JWT 클레임 및 서비스 계정 드라이버 앱이 시스템의 어떤 부분에 액세스할 수 있는지 결정하고 기능을 제공합니다. 이 접근 방식은 필요한 데이터에만 액세스를 제한합니다. 운전 숙제를 할 수 있습니다.
Fleet Engine은 이러한 보안 접근 방식을 사용하여 다음을 제공합니다.
인증은 요청하는 개체의 ID를 확인합니다. Fleet Engine은 신뢰도가 높은 환경에 ADC를, 저신뢰 환경에는 JWT를 사용함 지원합니다
Authorization은 인증된 항목이 액세스할 수 있는 리소스를 지정합니다. 있습니다. Fleet Engine은 Google Cloud IAM 역할 및 JWT가 있는 서비스 계정을 사용합니다. 인증된 항목에 확인 또는 변경 권한이 있는지 확인하는 클레임 확인할 수 있습니다
서버 및 클라이언트 보안 설정
Fleet Engine으로 보안을 사용 설정하려면 백엔드 서버와 클라이언트 애플리케이션 및 웹사이트에서 필요한 계정과 보안을 설정하세요.
다음 다이어그램은 기기에 보안을 설정하는 단계를 간략히 보여줍니다. 백엔드 서버 및 클라이언트 애플리케이션입니다
자세한 내용은 다음 섹션을 참고하세요.
백엔드 서버 보안 설정
Fleet 관리자는 다음 단계를 따라야 합니다.
서비스 계정 만들기 및 구성:
Google Cloud 콘솔에서 서비스 계정을 만듭니다.
특정 IAM 역할을 서비스 계정에 할당합니다.
생성된 서비스 계정으로 백엔드 서버를 구성합니다. 대상 자세한 내용은 서비스 계정 역할을 참고하세요.
Fleet Engine(ADC)과의 보안 통신 구성: 적절한 *관리자 서비스 계정과 함께 애플리케이션 기본 사용자 인증 정보를 사용하여 Fleet Engine 인스턴스와 통신하도록 백엔드를 구성합니다. 대상 세부정보, 애플리케이션 기본 사용자 인증 정보.
클라이언트 앱과 보안 통신 구성 (JWT): JSON 웹을 만듭니다. 클라이언트를 위한 적절한 클레임으로 JWT를 만드는 토큰 생성기 애플리케이션 및 모니터링 웹사이트를 모니터링할 수 있습니다 자세한 내용은 JSON 웹 토큰 발행.
애플리케이션 보안 설정
애플리케이션 개발자는 생성된 JSON 웹 토큰을 가져오는 방법을 포함해야 합니다. 백엔드 서버에서 호스팅하고 이를 사용하여 안전하게 통신할 수 있습니다 자세한 내용은 운전자 경험 또는 소비자 다음에 대한 경험 문서: 배포할 수 있습니다
서버 및 클라이언트 앱 보안 흐름
다음 시퀀스 다이어그램은 백엔드 서버와의 ADC 및 클라이언트 애플리케이션 및 웹사이트와의 JWT를 사용하여 Fleet Engine의 서버 및 클라이언트 앱 인증 및 승인 흐름을 보여줍니다.
백엔드 서버가 Fleet Engine에서 차량 및 이동 경로 또는 작업을 만듭니다.
백엔드에서 차량에 이동 또는 작업을 서빙: 운전자 앱이 활성 상태일 때 할당을 가져옵니다.
백엔드 서버: 각 서비스에 대해 JWT를 서명하고 발급합니다. 계정에 할당된 작업 또는 이동에 대한 적절한 IAM 역할을 부여해야 합니다.
클라이언트 앱: 클라이언트 앱은 수신된 JWT를 사용하여 차량 위치 업데이트를 Fleet Engine으로 전송합니다.
다음 단계
- Fleet Engine 프로젝트를 만듭니다.
- 서버에서 JSON 웹 토큰을 발행하는 방법을 알아보세요.
- 서비스 계정 역할에 대해 자세히 알아보세요.
- JWT에 대해 자세히 알아보세요.