다음을 통해 공유


IOpcSignatureReference 인터페이스(msopc.h)

서명되었거나 서명될 XML 태그에 대한 참조를 나타냅니다. 이 참조된 XML 태그는 서명이 생성될 때 서명 태그에서 serialize됩니다.

상속

IOpcSignatureReference 인터페이스는 IUnknown 인터페이스에서 상속됩니다. IOpcSignatureReference 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

IOpcSignatureReference 인터페이스에는 이러한 메서드가 있습니다.

 
IOpcSignatureReference::GetDigestMethod

요소가 서명된 경우 참조된 XML 요소에 사용할 다이제스트 메서드를 가져옵니다.
IOpcSignatureReference::GetDigestValue

요소가 서명되면 참조된 XML 요소에 대해 계산되는 다이제스트 값을 가져옵니다.
IOpcSignatureReference::GetId

참조의 식별자를 가져옵니다.
IOpcSignatureReference::GetTransformMethod

요소가 서명된 경우 참조된 XML 요소에 사용할 정식화 메서드를 가져옵니다.
IOpcSignatureReference::GetType

참조된 XML 요소의 형식을 나타내는 문자열을 가져옵니다.
IOpcSignatureReference::GetUri

참조된 XML 요소의 URI를 가져옵니다.

설명

IOpcSignatureReference 인터페이스 포인터를 만들려면 IOpcSignatureReferenceSet::Create 메서드를 호출합니다. IOpcSignatureReferenceSet::Create 는 패키지별 Object 요소에 대한 참조를 만들지 않습니다. 해당 참조는 서명이 생성될 때 자동으로 만들어집니다.

IOpcSignatureReference 인터페이스 포인터에 액세스하려면 IOpcSignatureReferenceEnumerator::GetCurrent 메서드를 호출합니다. IOpcSignatureReferenceEnumerator::GetCurrent 는 패키지별 Object 요소에 대한 참조에 액세스하지 않습니다. IOpcDigitalSignature::GetPackageObjectReference 메서드를 호출하여 해당 참조에 액세스합니다.

인터페이스는 참조 자체 및 참조된 XML 요소에 대한 정보에 액세스하는 메서드를 제공합니다. 참조된 요소는 패키지별 Object 요소, 애플리케이션별 Object 요소 또는 애플리케이션별 Object 의 자식 요소일 수 있습니다.

서명이 생성되면 이 참조 정보는 서명의 XML 태그(서명 태그)로 직렬화됩니다. 서명 태그에서 정보는 해당 URI 특성 값이 "#"으로 설정된 Reference 요소와 참조된 요소의 Id 특성 값으로 표시됩니다. 예를 들어 참조된 요소의 Id 특성이 "Application"인 경우 Reference 요소의 URI 특성은 다음 태그와 같이 "#Application"로 설정됩니다.

다음 서명 태그는 서명된 애플리케이션별 Object 요소에 대한 직렬화된 참조를 보여 줍니다.

<Signature Id="SignatureId" xmlns="http://www.w3.org/2000/09/xmldsig#">
    <SignedInfo>
        [...]
        <Reference URI="#idPackageObject" ...>
            [...]
        </Reference>
        <!-- This reference indicates that the application-specific
        Object element was signed when the signature was generated.-->
        <Reference URI="#Application" ...>
            [...]
        </Reference>
    </SignedInfo>
    [...]
    <Object Id="idPackageObject" ...>
        [...]
    </Object>
    <!-- This application-specific <Object> element was signed when the
    signature was generated. -->
    <Object Id="Application">
        [...]
    </Object>
</Signature>

다음 서명 태그는 애플리케이션별 Object 요소의 서명된 자식 요소에 대한 직렬화된 참조를 보여 줍니다.

참고 애플리케이션별 개체 의 자식 요소를 둘 이상 참조하여 서명할 수 있습니다.

 
<Signature Id="SignatureId" xmlns="http://www.w3.org/2000/09/xmldsig#">
    <SignedInfo>
        [...]
        <Reference URI="#idPackageObject" ...>
            [...]
        </Reference>
        <!-- This reference indicates that MyElement in the application
        -specific Object element was signed when the signature was
        generated. -->
        <Reference URI="#MyElementId" ...>
            [...]
        </Reference>
    </SignedInfo>
    [...]
    <Object Id="idPackageObject" ...>
        [...]
    </Object>
    <Object Id="Application">
        [...]
            <!-- This element is signed. -->
            <MyElement Id="MyElementId">
                [...]
            </MyElement>
        [...]
    </Object>
</Signature>

요구 사항

   
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 msopc.h

추가 정보

핵심 패키징 인터페이스

디지털 서명 개요

패키징 API를 사용하여 시작

IOpcDigitalSignature

IOpcSignatureReferenceEnumerator

IOpcSignatureReferenceSet

OPC_CANONICALIZATION_METHOD

개요

패키징 API 프로그래밍 가이드

패키징 API 참조

패키징 API 샘플

디지털 서명 인터페이스 패키징

패키징 인터페이스

참조