2017-11-20 4 views
0

현재 프로젝트를 진행 중이고 ReactJ로 작업을 시작했습니다. (여전히 멍청한 놈입니다.)ReactJs - 상태 및 소품 숨기기

그리고 나 자신에게 묻습니다. React 개발자 도구를 사용하는 사용자는 모든 소도구와 주를 볼 수 있습니다. 사용자가 예를 들어 보지 못하게하려면 어떻게해야합니까? ID 및 기타 '비공개'기능이 있습니까?

이 실제로 ReactJS 질문 아닌 사전

+3

@ Sag1v 영어 맞춤법을 모방하는 비 원어민 강사는 무례합니다. 질문에 대답하기 위해 http://remarkablemark.org/blog/2017/01/25/disable-react-devtools/ 프로덕션 환경에서 devtools를 비활성화 할 수 있습니다. –

+3

실제로 저는 여기에 모국어가 아닌 사람이고 "privet"입니다. 내가 정직하게 말하면서 오타가되었다 (나는 누군가를 해친다면 미안하다). 귀하의 제안에 관해서는, 그것은 devtools를 비활성화 할 수 있습니다 (비록 그것이 어떻게 든 우회 될 수 있다고 확신하지만) 실제로 어떤 데이터도 숨기지 않을 것입니다. –

+0

@ Sag1v가 작성한 것을 기반으로 클라이언트에 _anything_을 숨길 수 없습니다. 질문 자체는 유효하지 않으며, 100 % 통제 할 수없는 컴퓨터에 보낸 모든 것은 _public_입니다. 이 문맥에서의 "보안"은 너무 게으르거나 지식이 부족하여 사람들이 데이터를 얼마나 쉽게 얻을 수 있는지 알 수없는 또 다른 방법입니다. 그리고 그런데, 이것은 프로그래밍 문제가 아닙니다. –

답변

3

에 감사합니다,하지만 웹 브라우저/인터넷 아키텍처 질문입니다. 유감스럽게도 데이터는 클라이언트에서 항상 가로 채기 위해 사용할 수 있습니다. 즉, 응용 프로그램과 상호 작용할 수 있도록 데이터가 필요하기 때문입니다. 사용자의 브라우저 확장 및 내부 보안 조치에 의존해야합니다.

그럼에도 불구하고 데이터를 조금 더 어렵게 만들 수 있습니다. 이렇게하면 숙련 된 "해커"가 읽을 수 없지만 악의적 인 사용자가 응용 프로그램을 어지럽히는 것을 막을 수 있습니다.

  • 프로덕션 환경에서 디버깅을 더 어렵게 만들기 위해 코드를 축소하고 소스 맵을 숨 깁니다.
  • base64 또는 사용자 지정 암호화 기술을 사용하여 데이터를 암호화하여 읽기 어렵게 만드십시오.
  • 코드가 보호되지 않는 환경 (예 : 공개 Wi-Fi)에서 실행되어야하며 보안 문제 인 경우 API에서 일종의 종단 간 암호화를 구현하십시오.

그리고 가장 중요한 것은 클라이언트에게 실제로 필요한 데이터 만 전송하고 안전한 데이터입니다.