불투명 세션 토큰

정의

보유자에게는 의미가 없는 식별자이며, 서버 측 상태를 설명하기보다는 참조합니다. 따라서 클라이언트는 이를 읽거나, 수정하거나, 인접한 값을 추측할 수 없습니다.

투명 식별자와의 대조입니다. 뷰어가 /view?file=/records/2026/patient-4417.pdf 와 같이 문서를 지정하면, 클라이언트는 디렉터리 구조, 명명 규칙 및 환자 4416이 존재할 가능성을 알게 됩니다. 정수를 증가시키는 것은 가장 오래된 문서 누출 버그이며, 오늘날에도 여전히 발생하고 있습니다.

불투명 토큰은 전체 범주를 제거합니다. 서버는 토큰과 문서 간의 매핑을 보관하고, 클라이언트는 해석할 수 없는 문자열을 보유합니다. 열거할 것이 없기 때문에 열거가 불가능해집니다.

불투명하다고 해서 무해한 것은 아닙니다. 토큰은 여전히 ​​참조하는 대상에 대한 접근을 허가하므로, 단기 자격 증명으로 취급해야 합니다: 로그에 남기지 않고, 분석에 사용되는 URL에 포함하지 않으며, 뷰의 수명을 초과하여 클라이언트 측에 저장하지 않아야 합니다.

Doconut에서

Viewer.OpenDocumentAsync()는 페이지를 가져오기 위해 JavaScript 위젯이 사용하는 불투명 토큰을 반환합니다. 이는 문서 식별자가 아니며 절대 로그에 남기거나, 뷰어를 넘어 클라이언트 측에 캐시하거나, 세션 간에 재사용해서는 안 됩니다.

실제로 어떻게 작동하는지 확인하세요

정의만으로는 한계가 있습니다. 임시 라이선스는 여러분의 머신에서, 여러분의 문서에 대해 실행됩니다.