OBJREF
OBJREFOBJREF는 COM과 DCOM에 있는 보안 인터페이스 구조의 이름이다.COM 인터페이스는 원래 있던 컨텍스트(예: 스레드, 프로세스 또는 기계)에서만 직접 호출할 수 있기 때문에, 다른 컨텍스트에서 필요할 때 이 구조로 정리되고, 그 다음 필요한 통신을 관리하는 프록시로 전달되지 않는 목적지 컨텍스트로 전달된다.메시지 또는 네트워크 패킷을 전달하거나 호출에서 전달된 다른 인터페이스를 정리함.[1][2]
포맷
오프셋 | 크기 | 설명 |
---|---|---|
0 | 4 | 시그니처: 'MEW' |
4 | 4 | 구조물의 종류를 나타내는 깃발 |
8 | 16 | 인터페이스 식별자 |
플래그 = 1: 표준 | ||
24 | 4 | 플래그는 대부분 시스템용으로 예약되었지만 pinging 개체를 끄는 데 사용할 수 있다.[5] |
28 | 4 | 참조수 |
32 | 8 | OXID – 객체 내보내기 식별자[6] |
40 | 8 | OID – 객체 식별자[6] |
48 | 16 | IPID – 인터페이스 포인터 식별자[7] |
64 | 가변적 | 듀얼 스트링 어레이 |
플래그 = 2: 핸들러(표준 확장)[8] | ||
64 | 16 | 인터페이스 처리기로 사용될 클래스의 클래스 식별자, 즉 클라이언트와 프록시 사이에 위치. |
80 | 가변적 | 듀얼 스트링 어레이 |
플래그 = 4: 사용자 정의 마시기[9] | ||
24 | 16 | 사용자 지정 프록시의 클래스 식별자 |
40 | 4 | 0(수치) |
44 | 4 | 아래 데이터 크기 |
48 | 가변적 | 사용자 정의 마시기 데이터 |
플래그 = 8: 확장(표준 확장)[10] | ||
64 | 4 | 서명 'VYSN' |
68 | 가변적 | 듀얼 스트링 어레이 |
4 | 1(아래 데이터 요소의 수를 계산하지만 항상 하나의 요소만 있음) | |
4 | 서명 'VYSN' | |
특사의 컨텍스트를 식별하고 정리하는 데 사용되는 데이터 요소:[11][12][13] | ||
16 | 컨텍스트 식별자[14] | |
4 | 패딩을 제외한 아래 데이터 크기 | |
4 | 패딩을 포함한 아래 데이터 크기 | |
8n | 8바이트의 배수로 채워진 보안 특사의 컨텍스트 |
듀얼 스트링어레이의 레이아웃은 다음과 같다.[15][16]
오프셋 | 크기 | 설명 |
---|---|---|
0 | 2 | 아래 배열의 총 항목 수(null 포함) |
2 | 2 | 배열에서 문자열 바인딩을 나타내는 항목 수 |
4 | 2n | 문자열 및 보안 바인딩 |
문자열 바인딩은 IP 주소와 같이 연결 정보를 지정하는 null 종단 처리된 기록이며, 보안 바인딩은 인증 정보를 지정하는 null 종단 처리된 기록이다.두 어레이 모두 null 종단 처리됨.
참조
- ^ Tim Ewald (2001-03-06). "The Mechanics of COM+". Informit. Pearson Education & Addison-Wesley Professional. Retrieved 2008-09-07.
- ^ Mike Hearn (2005-01-22). "More DCOM notes". Wine Developer's List. Codeweavers. Retrieved 2008-09-07.
- ^ "dcom.idl". Wine. CodeWeavers. 2003. Retrieved 2008-09-06.
- ^ Dharma Shukla (1998). "ShowMeMyOBJREF". Retrieved 2008-09-07. (OBJREF의 내용을 검사하기 위한 예시 코드)
- ^ Eddon, Guy; Eddon, Henry (March 1998). "Understanding the DCOM Wire Protocol by Analyzing Network Data Packets". Microsoft Systems Journal. Microsoft. Retrieved 2008-09-07.
- ^ a b "Windows Protocols Master Glossary: O". MSDN. Microsoft. Retrieved 2008-09-06.
object exporter identifier (OXID): A 64-bit number that uniquely identifies an object exporter within an object server. … object identifier (OID): (1) In the context of an object server, a 64-bit number that uniquely identifies an object.
- ^ "Windows Protocols Master Glossary: I". MSDN. Microsoft. Retrieved 2008-09-06.
interface pointer identifier (IPID): A 128-bit number that uniquely identifies an interface on an object within an object exporter.
- ^ "OBJREF_HANDLER". MSDN. Microsoft. Retrieved 2008-09-06.
- ^ "OBJREF_CUSTOM". MSDN. Microsoft. Retrieved 2008-09-07.
- ^ "OBJREF_EXTENDED". MSDN. Microsoft. Retrieved 2008-09-06.
- ^ "Context Properties". MSDN. Microsoft. Retrieved 2008-09-07.
- ^ "Context Properties and Marshaling". MSDN. Microsoft. Retrieved 2008-09-07.
- ^ "Windows Protocols Master Glossary: E". MSDN. Microsoft. Retrieved 2008-09-07.
envoy context: A context that is marshaled and returned to a client as a result of obtaining an object reference.
- ^ "Windows Protocols Master Glossary: C". MSDN. Microsoft. Retrieved 2008-09-07.
context: A collection of context properties that describe an execution environment. sqq.
- ^ "DUALSTRINGARRAY". MSDN. Microsoft. Retrieved 2008-09-06.
- ^ Eddon, Guy; Eddon, Henry (1999). "Marshaled Interface Pointers". In Stroo, Eric; Turner, Alice; Young, Marc; Chang, Ina (eds.). Inside COM+ Base Services. Redmond: Microsoft Press. ISBN 0-7356-0728-1.