도커 이미지 형식으로 고객에게 앱을 제공하고 싶습니다. 그러나 최종 사용자가 컨테이너 내부의 내용을 변경하지 않도록하는 것이 중요합니다. 사용자는 컨테이너를 실행 / 중지하고 네트워크를 통해 컨테이너와 상호 작용할 수 있어야합니다.
컨테이너 내부에 대한 접근을 금지 할 수 있습니까? 컨테이너가 만든 이미지의 무결성을 확인할 수 있습니까?
도커 이미지 형식으로 고객에게 앱을 제공하고 싶습니다. 그러나 최종 사용자가 컨테이너 내부의 내용을 변경하지 않도록하는 것이 중요합니다. 사용자는 컨테이너를 실행 / 중지하고 네트워크를 통해 컨테이너와 상호 작용할 수 있어야합니다.
컨테이너 내부에 대한 접근을 금지 할 수 있습니까? 컨테이너가 만든 이미지의 무결성을 확인할 수 있습니까?
답변:
즉, 고객이 자체 인프라에서 실행되는 컨테이너를 수정하지 못하게 할 수 없습니다. 컨테이너는 난독화할 수있는 바이너리와는 다릅니다. 그것들은 런타임 환경입니다. 그러나 컨테이너 내부에 배포하는 코드는 난독 화 될 수 있습니다.
귀하의 질문은 타사 지원 문제, 즉 자신의 환경에서 실행되는 소프트웨어를 수정하는 클라이언트를 암시합니다. 제공 하는 컨테이너 를 운영 하는 도구 (예 : 모니터링 및 로깅)를 제공하는 경우 클라이언트는 소프트웨어 라이센스의 일부로 무단으로 수정하지 않는 데 동의해야합니다. 이는 컨테이너뿐만 아니라 모든 유형의 타사 소프트웨어에 적용됩니다.
상황에 따라 클라우드 인프라에서 실행되는 SaaS (Software As A Service)로 앱을 제공 할 수도 있습니다.
클라이언트가 컨테이너를 인프라에서 실행해야하고 수정 제한 사항을 준수하지 않으면 소프트웨어 사용을 지원하지 않을 수 있습니다.
Docker는 컨테이너에 대한 사용자 액세스를 막을 수단을 제공하지 않지만 이미지 개발자는 몇 가지 전략을 따를 수 있습니다
물론 그들은 항상 컨테이너를 내보내고 다시 포장 할 수 있지만 극단적 인 조치입니다 ...
당신은 고정 표시기 그룹에서 사용자를 제거하고 대한 sudos 만들 수 있습니다 docker start
와 docker stop
.
고객이 돈을 투자 할 준비가되면 Docker enterprise edition을 사용해야합니다. Docker EE에는 UCP(Universal Control Plane)
UCP 도구가 있습니다. UCP를 통해 역할 및 액세스 권한을 생성하고 사용자가 컨테이너를 변경 / 수정하도록 제한 할 수 있습니다.
1 개월의 평가판 라이센스가있는 DDC (Docker Data Center)보다 UCP를 테스트하려는 경우 요구 사항에 따라 세부 사항을 정교하게하는 데 도움이됩니다.
이것이 도움이되기를 바랍니다!
감사합니다!
스크립트를 통해 전달하십시오. 모든 종류의 제한 및 검사를 ansible 스크립트에 보관하십시오.