타사 AWS 리소스 관리

타사 AWS 리소스 관리

문제는 이것이다. 제3자로서 내 소프트웨어를 고객 AWS 계정에 배포하고 고객이 프로비저닝해야 하는 리소스에 액세스하도록 허용하지 않을 수 있습니까? 예를 들어, 일부 EC2 인스턴스를 프로비저닝하고 해당 인스턴스에 대한 액세스를 허용하지 않을 수 있습니까?

이 질문은 고객이 쉽게 읽을 수 있는 소스 코드 덕분에 IP가 유출되지 않도록 보호하려는 욕구에서 발생합니다. 따라서 라이센스 계약은 제쳐두고 IP가 손상될 가능성이 있으며, 이는 비즈니스 수명의 현 단계에서 상업적으로 매우 해로울 수 있습니다.

관련 주제와 AWS 설명서에 대한 질문을 찾아봤지만 솔직히 말해서 앞으로 나아갈 길이 명확하지 않습니다.

어떤 생각이라도 대단히 감사하겠습니다.

답변1

아니요. AWS 계정의 관리자는 전체 액세스 권한을 갖습니다. IAM을 사용하여 계정에 대한 단독 액세스 권한을 부여하더라도 언제든지 이를 취소할 수 있습니다.

귀하의 코드가 PHP와 같은 언어로 되어 있다고 가정합니까? 어느 정도 보호가 되는 난독처리기를 사용해 볼 수는 있지만 그다지 많지는 않습니다. PHP를 컴파일 가능한 언어로 변경하는 일종의 변환을 시도해 볼 수 있습니다.

가장 좋은 솔루션은 아마도 제품을 SAAS로 제공하는 것입니다.

답변2

AMI를 통해 타사 서비스를 제공하는 경우 계정 프로비저닝을 그대로 둘 필요는 없습니다. 즉, SSH 또는 RDP 세부 정보를 알려주지 않으면 EC2 인스턴스에 액세스하는 것이 다소 어려울 수 있습니다. 이전에 제3자로부터 서비스를 임대한 적이 있으며 상자에 대한 SSH 또는 RDP에 대한 자격 증명이 부여되지 않았으며 웹 인터페이스를 통해서만 상자를 관리할 수 있었습니다.

이전에 본 적이 없다면 AWS Marketplace는 타사 소프트웨어가 AWS 계정에서 실행될 수 있도록 설계되었으며 AWS는 사용자가 공식 계정에서 EBS 볼륨을 분리하는 것을 방지하는 등 타사에 대한 일부 보호 기능을 구축합니다. AMI를 생성하여 다른 AMI에 연결하거나 개인 용도로 AMI를 복제합니다.

안타깝게도 AWS Marketplace를 사용하려면 사용자가 OS 수준 관리를 수행할 수 있도록 액세스를 허용해야 합니다. 실제로 그것이 얼마나 확장되는지는 모르겠지만 루트/관리자 계정을 잠그고 일반 사용자를 통한 액세스를 허용해야 합니다. 아마도 이 사용자를 루트로 지정하면 일부 코드 보호가 제공될 수 있습니다.

이에 대한 좋은 예는 일부 전문 보안 소프트웨어입니다. https://aws.amazon.com/marketplace/pp/B01CEYZ5S6

또한 AWS Marketplace를 사용하여 AWS 사용자에게 SaaS 요금을 청구할 수도 있습니다.

관련 정보