11.07.2015 Views

Borland VisiBroker® 7.0 - Borland Technical Publications

Borland VisiBroker® 7.0 - Borland Technical Publications

Borland VisiBroker® 7.0 - Borland Technical Publications

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

vbsec::AuthorizationServicesProvidervbsec::AuthorizationServicesProviderThe implementer of the Authorization Service provides the collection of permissionobjects granted access to certain resources. Whenever an access decision is going tobe made, the AuthorizationServicesProvider is consulted. The Authorization Service isclosely associated with the Authorization domain concept. An Authorization Service isinstalled per each Authorization domain implementation, and functions only for thatparticular Authorization domain.The AuthorizationServicesProvider is initialized during the construction of itscorresponding Authorization domain. Use the following property to set theimplementing class for the AuthorizationServicesProvider:vbroker.security.domain..providerDuring runtime, this property is loaded by way of Java reflection.Another import functionality of the Authorization Service is to return the run-as alias fora particular role given. The security service is configured with a set of identities,identified by aliases. When resources request to “run-as” a given role theAuthorizationServices again is consulted to return the alias that must be used to “runas”in the context of the rules specified for this authorization domain.MethodsArgumentsvirtual void initialize (const std::string& name, ::vbsec::InitOptions&options) =0;This method initializes an Authorization Services provider.This method takes the following arguments:■A provider name.■The provider options.In addition to the provider's options, the following information is passed to facilitate theinteraction between this Authorization Service provider and the VisiBroker ORB:NameORBLoggerLogLevelDescriptionThe ORB instance used for the current system.A SimpleLogger instance used for login in the current system.An integer value denoting the security logging level.ExceptionsReturnsExceptionsArgumentsReturnsExceptionsThrows InitializationException if initialization of the Authorization provider fails.virtual std::string getName() const =0;Returns the name for this Authorization Service implementation.The Authorization Service name.nonevirtual ::vbsec::PermissionCollection* getPermissions (const ::vbsec::Resource*resource, const ::vbsec::Privileges* callerPrivileges) =0;Returns a homogeneous collection of permission attributes for the given privileges aswell as the resource upon which the access is attempted.This method takes the following two arguments:■■The caller Privileges.The resource object upon which access is to be attempted.A PermissionCollection object represents this subject's Permissions.none126 VisiBroker Security Guide

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!