SSO 연동을 통해 제한된 콘텐츠의 미리보기를 생성할 수 있나요? (Drupal)

안녕하세요, 모두. 디스코르스(Discourse)를 처음 사용하는 신규 사용자입니다. 첫 게시물입니다. 너그러이 봐주세요!

다음과 같은 솔루션이 가능한지 알려주실 수 있는 분이 계신가요?

시나리오:

  • Drupal 사이트가 있습니다.
  • Drupal 사이트에는 사용자 인증이 필요한 콘텐츠(“제한된 Drupal 콘텐츠”)가 있습니다.
  • Drupal과 Discourse 간에 SSO가 설정되어 있습니다.

문제:

  • “제한된 Drupal 콘텐츠” 링크를 게시물에 붙여넣은 Discourse 사용자는 403 오류 메시지를 받습니다: “죄송합니다. 웹 서버가 403 오류 코드를 반환하여 이 웹 페이지의 미리보기를 생성할 수 없습니다. 미리보기 대신 게시물에 링크만 표시됩니다.”

원하는 솔루션:

  • 제한된 콘텐츠에 접근 권한이 있는 Discourse 사용자가 해당 콘텐츠의 링크를 붙여넣으면 자동으로 미리보기가 표시되도록 하는 것

지금까지 말씀하신 내용에 모호한 부분이 있습니다. 드루팔 링크가 포함된 디스커스 포스트를 볼 때, 원박스(Onebox) 미리보기가 다음 중 어떤 것에 따라 달라져야 한다는 뜻인가요?

  1. 뷰어(시청자)의 드루팔 접근 권한
  2. 크리에이터(작성자)의 드루팔 접근 권한

어떤 경우든, 이를 디스커스 접근 권한 문제로 전환할 수 있다면 해결이 더 쉬워질 것입니다. 드루팔 역할을 기반으로 디스커스 그룹을 자동으로 할당할 수 있으며, 드루팔 디스커스 SSO 모듈을 사용하면 충분히 쉽게 처리할 수 있습니다.

또한, 제한된 콘텐츠에 원박스 미리보기 크롤러가 접근할 수 있도록 드루팔 측에서 일부 사용자 정의 접근 로직이 필요할 수 있습니다.

일부 시청자에게만 콘텐츠를 표시하고 다른 시청자에게는 표시하지 않으려면, 콘텐츠를 어떤 형태의 스크립트로 처리해야 할 것 같습니다. 콘텐츠가 시청자가 아니라 크리에이터에 따라 달라진다면 훨씬 쉬울 것입니다.

빠른 답변 감사합니다. 저는 미리보기가 디스코러스(Discourse)의 주제/댓글 작성자의 접근 권한에 따라 결정되는 줄 알았지, 디스코러스의 뷰어(시청자) 권한에 따라 결정되는 줄은 몰랐습니다.

미리보기는 동적 위젯이 아니라, 게시글에 연결되는 평탄한 HTML로 생성되는 스냅샷이라고 생각했거든요. 그런 가능성은 전혀 고려하지 못했습니다!

제 이해가 맞다면: 이는 디스코러스 측에서 스크립트를 통한 커스터마이징을 하거나, 또는 드루팔(Drupal) 측에서 커스텀 접근 로직을 구현해야 가능한가요?

Drupal을 설정하여 미리보기를 로그인/페이월 앞에 표시할 수 있을까요?

Drupal 게시물의 메타 속성에 접근할 수 있다면 원박싱(oneboxing)이 정상적으로 작동할 것입니다.

호스팅(비엔터프라이즈) Discourse 제품에서는 이 기능을 지원하는 방식으로 onebox를 커스터마이징할 수 있는 것 같지 않습니다.

이 문제를 해결하려면 최소한 메타데이터를 공개적으로 접근 가능하게 해야 할 것입니다.

답변해 주셔서 감사합니다.