Package com.sun.xml.wss

Examples of com.sun.xml.wss.ProcessingContext


        // invoke the Trust Plugin if necessary
        invokeTrustPlugin(packet, isSCMessage);

        //---------------OUTBOUND SECURITY PROCESSING----------
        ProcessingContext ctx = initializeOutgoingProcessingContext(packet, isSCMessage);
        ((ProcessingContextImpl) ctx).setIssuedTokenContextMap(issuedTokenContextMap);
        ((ProcessingContextImpl) ctx).setSCPolicyIDtoSctIdMap(scPolicyIDtoSctIdMap);
        ctx.isClient(true);
        try {
            if (hasKerberosTokenPolicy()) {
                populateKerberosContext(packet, (ProcessingContextImpl) ctx, isSCMessage);
            }
        } catch (XWSSecurityException xwsse) {
            log.log(Level.SEVERE,
                    LogStringsMessages.WSSTUBE_0024_ERROR_SECURING_OUTBOUND_MSG(), xwsse);
            throw new WebServiceException(
                    LogStringsMessages.WSSTUBE_0024_ERROR_SECURING_OUTBOUND_MSG(), xwsse);
        }

        if (isSCRenew(packet)) {
            // To append the policy for using with renew message;
            // Need to refactor to make it logical more clean
            SCTokenConfiguration config = new DefaultSCTokenConfiguration(wsscVer.getNamespaceURI());
            config.getOtherOptions().put("MessagePolicy", (MessagePolicy) ctx.getSecurityPolicy());
            IssuedTokenContext itc = itm.createIssuedTokenContext(config, packet.endpointAddress.toString());
            try {
                itm.renewIssuedToken(itc);
            } catch (WSTrustException se) {
                log.log(Level.SEVERE,
View Full Code Here


//            }
//        }
        //---------------INBOUND SECURITY VERIFICATION----------


        ProcessingContext ctx = initializeInboundProcessingContext(ret);
        ctx.isClient(true);

        ((ProcessingContextImpl) ctx).setIssuedTokenContextMap(issuedTokenContextMap);
        ((ProcessingContextImpl) ctx).setSCPolicyIDtoSctIdMap(scPolicyIDtoSctIdMap);
        PolicyResolver pr = PolicyResolverFactory.createPolicyResolver(this.policyAlternatives, cachedOperation, tubeConfig, addVer, true, rmVer, mcVer);
        ctx.setExtraneousProperty(ProcessingContext.OPERATION_RESOLVER, pr);
        Message msg = null;
        try {
            msg = ret.getInternalMessage();
            // Could be OneWay
            if (msg == null) {
View Full Code Here

       
        if (config == null) {
            return  packet;
        }
       
        ProcessingContext context = null;
        SOAPMessage message =  packet.getMessage().readAsSOAPMessage();
        try {
           
            StaticApplicationContext sContext =
                    new StaticApplicationContext(getPolicyContext(packet));
           
            context = new ProcessingContextImpl(packet.invocationProperties);
           
            context.setSOAPMessage(message);
           
            String operation = getOperationName(message);
           
            ApplicationSecurityConfiguration _sConfig =
                    config.getSecurityConfiguration();
           
            if (operation.equals(ENCRYPTED_BODY_QNAME) &&
                    _sConfig.hasOperationPolicies()) {
                // get enclosing port level configuration
                if (MessageConstants.debug) {
                    System.out.println("context in plugin= " +
                            sContext.toString());
                }
                ApplicationSecurityConfiguration appconfig =
                        (ApplicationSecurityConfiguration)
                        _sConfig.getSecurityPolicies(sContext).next();
               
                if (appconfig != null) {
                    context.setPolicyContext(sContext);
                    context.setSecurityPolicy(appconfig);
                } else {
                    ApplicationSecurityConfiguration config0 =
                            (ApplicationSecurityConfiguration) _sConfig.
                            getAllTopLevelApplicationSecurityConfigurations().
                            iterator().next();
                   
                    //sContext.setPortIdentifier ("");
                    context.setPolicyContext(sContext);
                    context.setSecurityPolicy(config0);
                }
            } else {
                sContext.setOperationIdentifier(operation);
                packet.invocationProperties.put(CONTEXT_WSDL_OPERATION, operation);
                SecurityPolicy policy =
                        _sConfig.getSecurityConfiguration(sContext);
               
                context.setPolicyContext(sContext);
               
                if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                    context.setSecurityPolicy(
                            ((DeclarativeSecurityConfiguration)policy).
                            receiverSettings());
                } else {
                    context.setSecurityPolicy(policy);
                }
            }
           
            context.setSecurityEnvironment(config.getSecurityEnvironment());
            context.isInboundMessage(true);
           
            if (_sConfig.retainSecurityHeader()) {
                context.retainSecurityHeader(true);
            }
           
            if (_sConfig.resetMustUnderstand()) {
                context.resetMustUnderstand(true);
            }
           
            SecurityRecipient.validateMessage(context);
            String operationName = getOperationName(message);
           
            packet.invocationProperties.put(CONTEXT_WSDL_OPERATION, operationName);
            packet.setMessage(Messages.create(context.getSOAPMessage()));
            /* TODO, how to change this
            if (packet.invocationProperties.get("javax.security.auth.Subject") != null) {
                packet.invocationProperties.("javax.security.auth.Subject",MessageContext.Scope.APPLICATION);
            }*/
            return packet;
View Full Code Here

      
        if (config == null) {
            return packet;
        }
        try {
            ProcessingContext context = new ProcessingContextImpl(packet.invocationProperties);
          
            String operation =
                    (String)packet.invocationProperties.get(CONTEXT_WSDL_OPERATION);
            StaticApplicationContext sContext =
                    new StaticApplicationContext(getPolicyContext(packet));
            sContext.setOperationIdentifier(operation);
           
            ApplicationSecurityConfiguration _sConfig =
                    config.getSecurityConfiguration();
           
            SecurityPolicy policy = _sConfig.getSecurityConfiguration(sContext);
            context.setPolicyContext(sContext);
           
            if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                context.setSecurityPolicy(((DeclarativeSecurityConfiguration)policy).senderSettings());
            } else {
                context.setSecurityPolicy(policy);
            }
           
            context.setSecurityEnvironment(config.getSecurityEnvironment());
            context.isInboundMessage(false);
            context.setSOAPMessage(packet.getMessage().readAsSOAPMessage());
            SecurityAnnotator.secureMessage(context);
            packet.setMessage(Messages.create(context.getSOAPMessage()));
            return packet;
        } catch (com.sun.xml.wss.impl.WssSoapFaultException soapFaultException) {
            Message msg = Messages.create(getSOAPFault(soapFaultException));
            packet.setMessage(msg);
            return packet;
View Full Code Here

             StaticApplicationContext sContext = getPolicyContext ();
             sContext.setOperationIdentifier (operation);

             SecurityPolicy policy = _sConfig.getSecurityConfiguration (sContext);

       ProcessingContext context = new ProcessingContext ();
       copyToProcessingContext (context, messageContext);

       context.setPolicyContext (sContext);

             if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                 context.setSecurityPolicy(
                    ((DeclarativeSecurityConfiguration)policy).receiverSettings());
             } else {
                 context.setSecurityPolicy(policy);
             }

       context.setSecurityEnvironment (_securityEnvironment);
       context.isInboundMessage (true);
            
             if (_sConfig.retainSecurityHeader()) {
                 context.retainSecurityHeader(true);
             }
            
             if (_sConfig.resetMustUnderstand()) {
                 context.resetMustUnderstand(true);
             }

             SecurityRecipient.validateMessage (context);

             copyToMessageContext(messageContext, context);
View Full Code Here

             StaticApplicationContext sContext = getPolicyContext();
             sContext.setOperationIdentifier (operation);

             SecurityPolicy policy = _sConfig.getSecurityConfiguration (sContext);

             ProcessingContext context = new ProcessingContext ();
             copyToProcessingContext (context, messageContext);

             context.setPolicyContext (sContext);

             if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                 context.setSecurityPolicy(
                    ((DeclarativeSecurityConfiguration)policy).senderSettings());
             } else {
                 context.setSecurityPolicy(policy);
             }

             context.setSecurityEnvironment (_securityEnvironment);
       context.isInboundMessage (false);

             SecurityAnnotator.secureMessage (context);

             copyToMessageContext(messageContext, context);
        } catch (com.sun.xml.wss.impl.WssSoapFaultException soapFaultException) {
View Full Code Here

        try {
            SOAPMessageContext messageContext = state.getMessageContext();
            SOAPMessage message = state.getRequest().getMessage();

            StaticApplicationContext sContext = new StaticApplicationContext (getPolicyContext());
            ProcessingContext context = new ProcessingContext();

            copyToProcessingContext (context, messageContext);
            String operation = getOperationName (message);

            if (operation.equals(ENCRYPTED_BODY_QNAME) && _sConfig.hasOperationPolicies()) {

         // get enclosing port level configuration
               if (MessageConstants.debug) {
                   System.out.println("context in plugin= " + sContext.toString());
               }
         ApplicationSecurityConfiguration config =
             (ApplicationSecurityConfiguration)
                       _sConfig.getSecurityPolicies(sContext).next();

         if (config != null) {
                   context.setPolicyContext (sContext);
                   context.setSecurityPolicy (config);
         } else {
                   ApplicationSecurityConfiguration config0 =
                       (ApplicationSecurityConfiguration) _sConfig.
             getAllTopLevelApplicationSecurityConfigurations().iterator().next();

                   //sContext.setPortIdentifier ("");
                    context.setPolicyContext (sContext);
                    context.setSecurityPolicy (config0);
               }
           } else {
         sContext.setOperationIdentifier(operation);
               messageContext.setProperty(CONTEXT_OPERATION, operation);
         SecurityPolicy policy = _sConfig.getSecurityConfiguration (sContext);

         context.setPolicyContext (sContext);

               if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                   context.setSecurityPolicy(
                       ((DeclarativeSecurityConfiguration)policy).receiverSettings());
               } else {
                   context.setSecurityPolicy(policy);
               }
     }

           context.setSecurityEnvironment (_securityEnvironment);
     context.isInboundMessage (true);

           if (_sConfig.retainSecurityHeader()) {
                 context.retainSecurityHeader(true);
           }
          
           SecurityRecipient.validateMessage (context);

           messageContext.setProperty(CONTEXT_OPERATION, getOperationName (message));
View Full Code Here

    throws Exception {
        try {
      SOAPMessageContext messageContext = state.getMessageContext();
      SOAPMessage message = state.getResponse().getMessage();

      ProcessingContext context = new ProcessingContext ();

      copyToProcessingContext(context, messageContext);

      if (state.getResponse().isFailure()) {
          DumpFilter.process (context);
          return;
      }

      String operation = (String) messageContext.getProperty(CONTEXT_OPERATION);

            StaticApplicationContext sContext = new StaticApplicationContext (getPolicyContext());
            sContext.setOperationIdentifier (operation);

      SecurityPolicy policy = _sConfig.getSecurityConfiguration (sContext);
      context.setPolicyContext (sContext);

            if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                context.setSecurityPolicy(
                   ((DeclarativeSecurityConfiguration)policy).senderSettings());
            } else {
                context.setSecurityPolicy(policy);
            }

            context.setSecurityEnvironment (_securityEnvironment);
      context.isInboundMessage (false);

            SecurityAnnotator.secureMessage (context);

            copyToMessageContext(messageContext, context);
        } catch (com.sun.xml.wss.impl.WssSoapFaultException soapFaultException) {
View Full Code Here

            ApplicationSecurityConfiguration config =
                    sConfig.getSecurityConfiguration();

            SecurityPolicy policy = config.getSecurityConfiguration(sContext);

            ProcessingContext context = new ProcessingContextImpl(packet.invocationProperties);
            context.setPolicyContext(sContext);
            context.setSOAPMessage(message);

            if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                context.setSecurityPolicy(
                        ((DeclarativeSecurityConfiguration) policy).receiverSettings());
            } else {
                context.setSecurityPolicy(policy);
            }

            context.setSecurityEnvironment(sConfig.getSecurityEnvironment());
            context.isInboundMessage(true);

            if (config.retainSecurityHeader()) {
                context.retainSecurityHeader(true);
            }
           
            if (config.resetMustUnderstand()) {
                context.resetMustUnderstand(true);
            }

            SecurityRecipient.validateMessage(context);

            /* TODO: not sure if this is needed
            if (messageContext.get("javax.security.auth.Subject") != null) {
            messageContext.setScope("javax.security.auth.Subject", MessageContext.Scope.APPLICATION);
            }*/
            packet.setMessage(Messages.create(context.getSOAPMessage()));
            return packet;

        } catch (com.sun.xml.wss.impl.WssSoapFaultException soapFaultException) {
            throw getSOAPFaultException(soapFaultException, isSOAP12);
        } catch (com.sun.xml.wss.XWSSecurityException xwse) {
View Full Code Here

        }
    }
    // client side request sending hook
    public Packet secureRequest(Packet packet) {

        ProcessingContext context = null;
        SOAPMessage message = null;
        try {
            message = packet.getMessage().readAsSOAPMessage();
        } catch (SOAPException ex) {
            throw new WebServiceException(ex);
        }

        try {
            //TODO: whether property on BindingProvider.RequestContext is available here
            SecurityConfiguration sConfig =
                    (SecurityConfiguration) packet.invocationProperties.get(MESSAGE_SECURITY_CONFIGURATION);

            if (sConfig == null) {
                return packet;
            }

            WSDLBoundOperation op = null;
            if (port != null) {
                op = packet.getMessage().getOperation(port);
            }

            QName operationQName = null;
            if (op != null) {
                operationQName = op.getName();
            }

            String operation = null;
            try {
                if (operationQName == null) {
                    operation = getOperationName(message);
                } else {
                    operation = operationQName.toString();
                }
            } catch (XWSSecurityException e) {
                throw new WebServiceException(e);
            }

            packet.invocationProperties.put(CONTEXT_WSDL_OPERATION, operation);

            StaticApplicationContext sContext =
                    getPolicyContext(packet, sConfig);
            sContext.setOperationIdentifier(operation);

            ApplicationSecurityConfiguration config =
                    sConfig.getSecurityConfiguration();

            SecurityPolicy policy = config.getSecurityConfiguration(sContext);

            context = new ProcessingContextImpl(packet.invocationProperties);

            context.setPolicyContext(sContext);

            if (PolicyTypeUtil.declarativeSecurityConfiguration(policy)) {
                context.setSecurityPolicy(
                        ((DeclarativeSecurityConfiguration) policy).senderSettings());
            } else {
                context.setSecurityPolicy(policy);
            }

            context.setSecurityEnvironment(sConfig.getSecurityEnvironment());
            context.isInboundMessage(false);
            context.setSOAPMessage(message);
            SecurityAnnotator.secureMessage(context);
            packet.setMessage(Messages.create(context.getSOAPMessage()));
            return packet;

        } catch (com.sun.xml.wss.impl.WssSoapFaultException soapFaultException) {
            throw new WebServiceException(soapFaultException);
        } catch (com.sun.xml.wss.XWSSecurityException xwse) {
View Full Code Here

TOP

Related Classes of com.sun.xml.wss.ProcessingContext

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.