-
Key: CORBA3-25
-
Legacy Issue Number: 4167
-
Status: closed
-
Source: Syracuse University ( Polar Humenn)
-
Summary:
The stateful boolean of the CSIIOP::CompoundSecMech forces all CSI
mechanisms to behave the same way with respect to state retention. This is
problematic and makes mechanisms parametric on the POA they are
supporting. The retention of state is actually a function of an
established transport, not a POA.Discussion:
In the architecture (OMA) POA's are the 'owners' of object references.
Therefore, the state retention boolean must be set there, as there is only
one CompundSecMecList per object reference.You may have cases where multiple CSI mechanisms must support one POA.
These mechanisms may span POA's as they may be defaults for many POA's. If
state retention is parameterized on the particular mechanism, then
negotiating the state retention for each mechanism becomes easier to
handle, as the state retention algorithm is mechanism specific. Therefore,
that mechanism may operate independently of knowing the POA.This makes the TSS mechanisms to be able to work independently of the POA
policy.Also, for another reason, CSI state retention is based on the established
transport, which has nothing to do with a POA, therefore it is part of the
CSI mechanism over which the transport it is working.I think the purpose for the "stateful" boolean was ill conceived. It was
thought of by some as a deficiency in your implementation and you needed
to provide a single boolean so one could RED FLAG a security service
"inferior" in some sense.The fact is that state retention can be inefficient in some cases. State
retention is actually parameter that is a function of the mechanism over a
particular transport mechanism. One may want to use mechanisms that retain
their state where one makes lots of invocations over a single transport
(long live connections). (State retention is a function of transport).
Short lived connections need not incur the overhead.Proposed Solution:
Move the stateful field, as follows:
module CSIIOP {
// type used in the body of a TAG_CSI_SEC_MECH_LIST component to describe a
// compound mechanismstruct CompoundSecMech
{ AssociationOptions target_requires; IOP::TaggedComponent transport_mech; AS_ContextSec as_context_mech; SAS_ContextSec sas_context_mech; boolean stateful; };
// type corresponding to the body of a TAG_CSI_SEC_MECH_LIST component
struct CompoundSecMechList
{ sequence <CompoundSecMech> mechanism_list; };
};
-
Reported: CORBA 2.4.1 — Mon, 22 Jan 2001 05:00 GMT
-
Disposition: Resolved — CORBA 3.0.2
-
Disposition Summary:
CLOSE NO CHANGE
-
Updated: Fri, 6 Mar 2015 20:58 GMT
CORBA3 — Stateful boolean causes all CSI mechanisms to operate the same way.
- Key: CORBA3-25
- OMG Task Force: Core 2002 RTF