웹개발 자바스크립트 세션 질문

웹개발 자바스크립트 세션 질문

작성일 2023.08.25댓글 2건
    게시물 수정 , 삭제는 로그인 필요

로그인하면 유저의 uid를 세션에 저장되도록하였습니다.

그런데 클라이언트가 f12를 눌러서 세션에 저장되어있는 값을 확인가능하고 수정도 가능하더라고요

혹시 세션 수정못하게하거나 세션을 클라이언트가 못보게하는방법이있을까요
또는 세션을 다른방법으로 관리할 수 있는지 궁금합니다.


#웹개발 자바스크립트 #웹개발 언어 자바스크립트

profile_image 익명 작성일 -

세션은 서버 측에서 관리되는 데이터이기 때문에 클라이언트에서 직접 수정하는 것을 막을 수는 없습니다. 그러나 세션을 보호하고 클라이언트가 세션 값을 수정하는 것을 어렵게 만들 수 있는 몇 가지 방법이 있습니다.

1. 세션 값을 암호화: 세션 값을 암호화하여 클라이언트가 이를 해독하지 못하도록 만들 수 있습니다. 이렇게 하면 클라이언트가 세션 값을 수정하려고 해도 암호화된 값을 해독하지 못하므로 무효화됩니다.

2. 세션 값에 서명 추가: 세션 값을 서명하여 클라이언트가 세션 값을 수정하려고 할 때 서명이 유효하지 않다는 것을 확인할 수 있습니다. 서명은 클라이언트가 세션 값을 변경하지 않았음을 보장하는 데 도움이 됩니다.

3. HTTPS 사용: HTTPS를 사용하여 통신하는 경우 데이터가 암호화되어 전송되므로 중간에 데이터를 가로채서 수정하는 것이 어려워집니다. 따라서 세션 값이 안전하게 전송됩니다.

또한 세션 외에도 다른 방법으로 사용자 인증을 관리할 수 있습니다. 예를 들어, 토큰 기반 인증을 사용하여 클라이언트가 토큰을 가지고 인증을 수행하도록 할 수 있습니다. 이 경우 토큰은 클라이언트에 저장되고 서버에서 유효성을 검사합니다. 토큰은 클라이언트에서 수정할 수 없으므로 보안성이 높아집니다.

하지만 이러한 방법들도 완벽한 보안을 제공하지는 않습니다. 악의적인 사용자는 여전히 시도할 수 있으며, 보안에 대한 지속적인 감시와 업데이트가 필요합니다.

profile_image 익명 작성일 -

세션은 서버 측에서 관리되는 데이터이기 때문에 클라이언트에서 직접 수정하는 것을 막을 수는 없습니다. 그러나 세션을 보호하고 클라이언트에서 수정할 수 없도록 하는 몇 가지 방법이 있습니다.

1. 세션 데이터 암호화: 세션 데이터를 암호화하여 클라이언트에서는 암호화된 데이터만 볼 수 있도록 합니다. 클라이언트가 데이터를 수정하려고 하면 암호화된 데이터를 해독해야 하므로 수정이 어려워집니다.

2. 세션 데이터 무결성 검사: 세션 데이터에 대한 무결성 검사를 수행하여 클라이언트에서 데이터를 수정하려고 할 때 감지할 수 있습니다. 예를 들어, 세션 데이터에 해시 값을 추가하여 클라이언트가 데이터를 수정하면 해시 값이 변경되어 검사에 실패하게 됩니다.

3. HTTPS 사용: HTTPS를 사용하여 통신을 암호화하면 중간에 데이터를 가로채거나 수정하는 것을 어렵게 만듭니다. 따라서 세션 데이터가 안전하게 전송되고 클라이언트에서 수정하는 것을 방지할 수 있습니다.

4. 서버 측 검증: 클라이언트에서 세션 데이터를 수정하더라도 서버 측에서 검증을 수행하여 데이터의 일관성을 확인할 수 있습니다. 예를 들어, 클라이언트가 세션 데이터를 수정하면 서버에서는 해당 데이터를 검증하여 올바르지 않다고 판단할 수 있습니다.

세션을 다른 방법으로 관리하는 것도 가능합니다. 예를 들어, 데이터베이스를 사용하여 세션 데이터를 저장하고 클라이언트에는 세션 ID만 전달하는 방식을 사용할 수 있습니다. 이 경우 클라이언트는 세션 데이터를 직접 수정할 수 없으며, 서버에서 데이터베이스를 통해 세션을 관리하게 됩니다.

웹개발 자바스크립트 세션 질문

로그인하면 유저의 uid를 세션에 저장되도록하였습니다. 그런데 클라이언트가 f12를 눌러서 세션에 저장되어있는 값을 확인가능하고 수정도 가능하더라고요 혹시 세션...

웹개발자가 되기 위해서 질문입니다

... 취득하였고 자바스크립트 Dom함수 기반과 클래스 기반 그리고 노드 세션,리엑트를 사용해서 포트폴리오를... 우선적으로 저는 비전공자가 웹개발가 되기 위해서 독학은...