TAO_Security  2.1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
TAO::Security::AccessDecision Class Reference

#include <SL2_SecurityManager.h>

Inheritance diagram for TAO::Security::AccessDecision:
Inheritance graph
[legend]
Collaboration diagram for TAO::Security::AccessDecision:
Collaboration graph
[legend]

Classes

struct  ReferenceKeyType

Public Member Functions

 AccessDecision ()
 ~AccessDecision (void)
virtual ::CORBA::Boolean access_allowed (const ::SecurityLevel2::CredentialsList &cred_list,::CORBA::Object_ptr target, const char *operation_name, const char *target_interface_name)
virtual ::CORBA::Boolean access_allowed_ex (const char *orb_id, const ::CORBA::OctetSeq &adapter_id, const ::CORBA::OctetSeq &object_id, const ::SecurityLevel2::CredentialsList &cred_list, const char *operation_name)
virtual ::CORBA::Boolean default_decision (void)
virtual void default_decision (::CORBA::Boolean d)
virtual void add_object (const char *orbid, const ::CORBA::OctetSeq &adapter_id, const ::CORBA::OctetSeq &object_id,::CORBA::Boolean allow_insecure_access)
virtual void remove_object (const char *orbid, const ::CORBA::OctetSeq &adapter_id, const ::CORBA::OctetSeq &object_id)
- Public Member Functions inherited from TAO::SL2::AccessDecision
boolean access_allowed_ex (in::CORBA::ORBid orb_id, in::CORBA::OctetSeq adapter_id, in::CORBA::OctetSeq object_id, in::SecurityLevel2::CredentialsList cred_list, in::CORBA::Identifier operation_name)
void add_object (in::CORBA::ORBid orb_id, in::CORBA::OctetSeq adapter_id, in::CORBA::OctetSeq object_id, in boolean allow_insecure_access)
void remove_object (in::CORBA::ORBid orb_id, in::CORBA::OctetSeq adapter_id, in::CORBA::OctetSeq object_id)
- Public Member Functions inherited from SecurityLevel2::AccessDecision
boolean access_allowed (in SecurityLevel2::CredentialsList cred_list, in Object target, in CORBA::Identifier operation_name, in CORBA::Identifier target_interface_name)
- Public Member Functions inherited from CORBA::LocalObject
virtual ~LocalObject (void)
virtual CORBA::Boolean _non_existent (void)
virtual char * _repository_id (void)
virtual CORBA::InterfaceDef_ptr _get_interface (void)
virtual CORBA::Object_ptr _get_component (void)
virtual void _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::Request_ptr &request, CORBA::Flags req_flags)
virtual void _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::ExceptionList_ptr exclist, CORBA::ContextList_ptr ctxtlist, CORBA::Request_ptr &request, CORBA::Flags req_flags)
virtual CORBA::Request_ptr _request (const char *operation)
CORBA::Policy_ptr _get_policy (CORBA::PolicyType type)
CORBA::Policy_ptr _get_cached_policy (TAO_Cached_Policy_Type type)
CORBA::Object_ptr _set_policy_overrides (const CORBA::PolicyList &policies, CORBA::SetOverrideType set_add)
CORBA::PolicyList * _get_policy_overrides (const CORBA::PolicyTypeSeq &types)
CORBA::Boolean _validate_connection (CORBA::PolicyList_out inconsistent_policies)
virtual CORBA::ULong _hash (CORBA::ULong maximum)
virtual CORBA::Boolean _is_equivalent (CORBA::Object_ptr other_obj)
virtual CORBA::ORB_ptr _get_orb (void)
virtual TAO::ObjectKey * _key (void)
virtual ~Object (void)
virtual TAO_Abstract_ServantBase_servant (void) const
virtual CORBA::Boolean _is_collocated (void) const
virtual CORBA::Boolean _is_local (void) const
 Object (TAO_Stub *p, CORBA::Boolean collocated=false, TAO_Abstract_ServantBase *servant=0, TAO_ORB_Core *orb_core=0)
 Object (IOP::IOR *ior, TAO_ORB_Core *orb_core)
virtual TAO_Stub_stubobj (void) const
virtual TAO_Stub_stubobj (void)
virtual void _proxy_broker (TAO::Object_Proxy_Broker *proxy_broker)
virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr)
CORBA::Boolean is_evaluated (void) const
TAO_ORB_Coreorb_core (void) const
IOP::IOR * steal_ior (void)
const IOP::IOR & ior (void) const
virtual bool can_convert_to_ior (void) const
virtual char * convert_to_ior (bool use_omg_ior_format, const char *ior_prefix) const
void _decr_refcount (void)
virtual void _add_ref (void)
virtual void _remove_ref (void)
virtual CORBA::ULong _refcount_value (void) const
virtual CORBA::Boolean _is_a (const char *logical_type_id)
virtual const char * _interface_repository_id (void) const

Private Types

typedef ReferenceKeyType OBJECT_KEY
typedef
ACE_Hash_Map_Manager_Ex
< OBJECT_KEY, CORBA::Boolean,
ACE_Hash< OBJECT_KEY >
, ACE_Equal_To< OBJECT_KEY >
, ACE_Null_Mutex
ACCESS_MAP_TYPE

Private Member Functions

OBJECT_KEY map_key_from_objref (CORBA::Object_ptr obj)
 Encapsulates a TAO-specific way to do object_to_string() without having an ORB reference handy.
::CORBA::Boolean access_allowed_i (OBJECT_KEY &key, const char *operation_name)

Private Attributes

::CORBA::Boolean default_allowance_decision_
ACCESS_MAP_TYPE access_map_
TAO_SYNCH_MUTEX map_lock_

Additional Inherited Members

- Public Types inherited from CORBA::LocalObject
typedef LocalObject_ptr _ptr_type
typedef LocalObject_var _var_type
typedef LocalObject_out _out_type
typedef Object_ptr _ptr_type
typedef Object_var _var_type
typedef Object_out _out_type
- Static Public Member Functions inherited from CORBA::LocalObject
static LocalObject_ptr _duplicate (LocalObject_ptr obj)
static LocalObject_ptr _nil (void)
static LocalObject_ptr _narrow (CORBA::Object_ptr obj)
static CORBA::Boolean marshal (const Object_ptr x, TAO_OutputCDR &cdr)
static void _tao_any_destructor (void *)
static CORBA::Boolean is_nil_i (CORBA::Object_ptr obj)
static void tao_object_initialize (Object *)
static CORBA::Object_ptr _duplicate (CORBA::Object_ptr obj)
- Public Attributes inherited from TAO::SL2::AccessDecision
attribute boolean default_decision
- Protected Member Functions inherited from CORBA::LocalObject
 LocalObject (void)
 Object (int dummy=0)
TAO::Object_Proxy_Broker * proxy_broker () const
- Protected Attributes inherited from CORBA::LocalObject
ACE_Atomic_Op< TAO_SYNCH_MUTEX,
unsigned long > 
refcount_

Member Typedef Documentation

Constructor & Destructor Documentation

TAO::Security::AccessDecision::AccessDecision ( )

Constructor

TAO::Security::AccessDecision::~AccessDecision ( void  )

Member Function Documentation

CORBA::Boolean TAO::Security::AccessDecision::access_allowed ( const ::SecurityLevel2::CredentialsList cred_list,
::CORBA::Object_ptr  target,
const char *  operation_name,
const char *  target_interface_name 
)
CORBA::Boolean TAO::Security::AccessDecision::access_allowed_ex ( const char *  orb_id,
const ::CORBA::OctetSeq &  adapter_id,
const ::CORBA::OctetSeq &  object_id,
const ::SecurityLevel2::CredentialsList cred_list,
const char *  operation_name 
)
CORBA::Boolean TAO::Security::AccessDecision::access_allowed_i ( OBJECT_KEY key,
const char *  operation_name 
)
private
virtual void TAO::Security::AccessDecision::add_object ( const char *  orbid,
const ::CORBA::OctetSeq &  adapter_id,
const ::CORBA::OctetSeq &  object_id,
::CORBA::Boolean  allow_insecure_access 
)
virtual
CORBA::Boolean TAO::Security::AccessDecision::default_decision ( void  )
virtual void TAO::Security::AccessDecision::default_decision ( ::CORBA::Boolean  d)
virtual
TAO::Security::AccessDecision::OBJECT_KEY TAO::Security::AccessDecision::map_key_from_objref ( CORBA::Object_ptr  obj)
private

Encapsulates a TAO-specific way to do object_to_string() without having an ORB reference handy.

Note
If OBJECT_KEY changes as described above, this should change so that it generates an OBJECT_KEY.
void TAO::Security::AccessDecision::remove_object ( const char *  orbid,
const ::CORBA::OctetSeq &  adapter_id,
const ::CORBA::OctetSeq &  object_id 
)
virtual

Member Data Documentation

ACCESS_MAP_TYPE TAO::Security::AccessDecision::access_map_
private
::CORBA::Boolean TAO::Security::AccessDecision::default_allowance_decision_
private

This is the default value that's returned from access_allowed() when the access table doesn't contain an entry for the reference.

TAO_SYNCH_MUTEX TAO::Security::AccessDecision::map_lock_
private

The documentation for this class was generated from the following files: