ASP.NET Core Universal Player 통합
.NET SDK를 설치하면 인증된 사용자 및 콘텐츠 조회를 연결하고 공급된 재생 세션 엔드포인트를 노출시킵니다.
미리보기 SDK, 응용 예제 및 소스. 추출된 폴더 레이아웃을 유지하십시오.
직접 수정할 세 위치#
- 설정
Program.cs: AddDrmXPlayback서버 자격 증명을 설정, 응용 프로그램 ID 및 보호 정책.
- 권한 부여
QuickStartCatalog.FindAuthorizedVideoAsync자신의 데이터베이스를 쿼리하고 QuickStartVideo 또는 null를 반환합니다.
- 사용자 인증
기존 ASP.NET Core 미들웨어
안정적인 NameIdentifier 클레임을 제공하고 등록된 엔드포인트를 보호합니다.
1. 포함된 예제 실행#
cd examples/sdk/aspnet-core
# Set DRMX_PLAYBACK_SITE_ID, DRMX_PLAYBACK_SITE_KEY and DRMX_PLAYBACK_ACCESS_KEY.
# For localhost only, set DRMX_LOCAL_DEMO=1.
dotnet run.NET 10을 사용합니다. 프로젝트는 Haihaisoft.DrmX.AspNetCore을 참조하며 NuGet.Config는 포함된 패키지를 가리킵니다. Program.cs의 QuickStartCatalog.FindAuthorizedVideoAsync 안에서 your-published-content-id를 교체합니다. http://127.0.0.1:8105/?videoId=1를 엽니다.
2. 고객 애플리케이션의 조회 연결#
데모 카탈로그 구현을 권한을 확인하는 조회로 교체합니다. 아래 예시의 저장소는 고객 애플리케이션에서 제공해야 합니다.
var video = await repository.FindAuthorizedVideoAsync(
userId, videoId, cancellationToken);
if (video is null) return null;
return new QuickStartVideo(video.DrmxContentId, video.Title);공급된 QuickStartEntitlement : IDrmXContentEntitlement는 이 조회를 재사용하고 요구한 Content ID 및 유형을 비교합니다. 그 비교를 유지하십시오. 카탈로그는 request-scoped입니다; 각 사용자를 위한 Singleton Content ID를 바꾸지 마십시오.
3. 기존 인증 연결#
로컬 데모 신원 미들웨어를 기존 인증으로 교체합니다. 안정적인 NameIdentifier 클레임을 유지하고 .RequireAuthorization()와 같은 권한 정책으로 페이지 및 MapDrmXPlaybackSession() 엔드포인트를 보호합니다. 실제 HTTPS 호스트를 설정하고 동일 출처 요청 검사를 유지합니다.
4. 강의 페이지에 플레이어 추가#
예제의 스크립트 태그와 Web Component를 재사용합니다. 세션 URL에 ?videoId=...이 포함되므로 페이지와 세션 요청이 같은 선택 강의를 조회합니다. 현재 예제는 AddDrmXPlayback에서 애플리케이션 전체 정책을 설정하고 Content ID는 요청마다 조회합니다.
운영 배포 전 확인#
- 접근이 허용된 사용자로 로그인하여 지원되는 브라우저에서 게시된 동영상을 재생합니다.
- 로그아웃 사용자와 미결제 사용자를 테스트하고 권한 철회 및 만료도 확인합니다. 새 세션 요청은 거부되어야 합니다.
- 브라우저의 Content ID 또는 사이트 동영상 ID를 변경해 봅니다. 서버는 새 선택 항목을 검사해야 합니다.
- 정확한 공개 HTTPS 출처를 설정하고 프레임워크의 세션 및 CSRF 보호를 유지하며 데모 신원 코드를 비활성화합니다.
기존 세션과 DRM 라이선스에는 자체 유효기간이 있습니다. 새 요청에서는 권한 변경을 검사하지만 이미 발급된 라이선스를 삭제하지는 않습니다.
DRM-X 6.0