org.apache.felix.framework
Class SecurityProviderImpl

java.lang.Object
  extended by org.apache.felix.framework.SecurityProviderImpl
All Implemented Interfaces:
org.apache.felix.framework.ext.SecurityProvider

public final class SecurityProviderImpl
extends java.lang.Object
implements org.apache.felix.framework.ext.SecurityProvider

This class is the entry point to the security. It is used to determine whether a given bundle is signed correctely and has permissions based on PermissionAdmin or ConditionalPermissionAdmin.


Method Summary
 void checkBundle(org.osgi.framework.Bundle bundle)
          If the given bundle is signed but can not be verified (e.g., missing files) then throw an exception.
 java.lang.Object getSignerMatcher(org.osgi.framework.Bundle bundle, int signersType)
          Get a signer matcher that can be used to match digital signed bundles.
 boolean hasBundlePermission(java.security.ProtectionDomain bundleProtectionDomain, java.security.Permission permission, boolean direct)
          If we have a permissionadmin then ask that one first and have it decide in case there is a location bound.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

checkBundle

public void checkBundle(org.osgi.framework.Bundle bundle)
                 throws java.lang.Exception
If the given bundle is signed but can not be verified (e.g., missing files) then throw an exception.

Specified by:
checkBundle in interface org.apache.felix.framework.ext.SecurityProvider
Throws:
java.lang.Exception

getSignerMatcher

public java.lang.Object getSignerMatcher(org.osgi.framework.Bundle bundle,
                                         int signersType)
Get a signer matcher that can be used to match digital signed bundles.

Specified by:
getSignerMatcher in interface org.apache.felix.framework.ext.SecurityProvider

hasBundlePermission

public boolean hasBundlePermission(java.security.ProtectionDomain bundleProtectionDomain,
                                   java.security.Permission permission,
                                   boolean direct)
If we have a permissionadmin then ask that one first and have it decide in case there is a location bound. If not then either use its default permission in case there is no conditional permission admin or else ask that one.

Specified by:
hasBundlePermission in interface org.apache.felix.framework.ext.SecurityProvider


Copyright © 2006-2011 The Apache Software Foundation. All Rights Reserved.