Examples of KrbPriv


Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

           
            int privateBytesLength = messageLength - HEADER_LENGTH - encodedAppReplyLength;
            byte[] encodedPrivateMessage = new byte[privateBytesLength];
            buf.get( encodedPrivateMessage );
           
            KrbPriv privateMessage = KerberosDecoder.decodeKrbPriv( encodedPrivateMessage );
           
            return new ChangePasswordReply( protocolVersion, applicationReply, privateMessage );
        }
        catch( KerberosException e )
        {
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

           
            EncryptedData authData = cipherTextHandler.encrypt( tgt.getSessionKey(), getEncoded( authenticator ), KeyUsage.AP_REQ_AUTHNT_SESS_KEY );
            apReq.setAuthenticator( authData );
           
           
            KrbPriv privateMessage = new KrbPriv();
           
            EncKrbPrivPart part = new EncKrbPrivPart();
            part.setSenderAddress( new HostAddress( InetAddress.getLocalHost() ) );
            part.setSeqNumber( authenticator.getSeqNumber() );
            part.setTimestamp( authenticator.getCtime() );

            short changePwdPVNO = ChangePasswordRequest.PVNO;
           
            if( config.isUseLegacyChngPwdProtocol() )
            {
                part.setUserData( Strings.getBytesUtf8( newPassword ) );
                changePwdPVNO = ChangePasswordRequest.OLD_PVNO;
            }
            else
            {
                ChangePasswdData chngPwdData = new ChangePasswdData();
                chngPwdData.setNewPasswd( Strings.getBytesUtf8( newPassword ) );
                //chngPwdData.setTargName( new PrincipalName( clientPrincipal, PrincipalNameType.KRB_NT_PRINCIPAL ) );
                //chngPwdData.setTargRealm( clientTgtReq.getRealm() );
                byte[] data = getEncoded( chngPwdData );
                part.setUserData( data );
            }
           
            EncryptedData encKrbPrivPartData = cipherTextHandler.encrypt( subKey, getEncoded( part ), KeyUsage.KRB_PRIV_ENC_PART_CHOSEN_KEY );
            privateMessage.setEncPart( encKrbPrivPartData );
           
            ChangePasswordRequest req = new ChangePasswordRequest( changePwdPVNO, apReq, privateMessage );
           
            channel = new KerberosChannel();
            channel.openConnection( config.getHostName(), config.getPasswdPort(), config.getTimeout(), config.isUseUdp() );
           
            AbstractPasswordMessage reply = sendAndReceiveChngPwdMsg( req, channel );
           
            if ( reply instanceof ChangePasswordError )
            {
                ChangePasswordError err = ( ChangePasswordError ) reply;
               
                ChangePasswordResult result = new ChangePasswordResult( err.getKrbError().getEData() );

                return result;
            }
           
            ChangePasswordReply chngPwdReply = ( ChangePasswordReply ) reply;
            ApRep chngApRep = chngPwdReply.getApplicationReply();
            byte[] apRepData = cipherTextHandler.decrypt( tgt.getSessionKey(), chngApRep.getEncPart(), KeyUsage.AP_REP_ENC_PART_SESS_KEY );
           
            EncApRepPart encApRepPart = KerberosDecoder.decodeEncApRepPart( apRepData );
           
            KrbPriv replyPriv = chngPwdReply.getPrivateMessage();
            byte[] data = cipherTextHandler.decrypt( encApRepPart.getSubkey(), replyPriv.getEncPart(), KeyUsage.KRB_PRIV_ENC_PART_CHOSEN_KEY );
            part = KerberosDecoder.decodeEncKrbPrivPart( data );
           
            ChangePasswordResult result = new ChangePasswordResult( part.getUserData() );
           
            return result;
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

        {
            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, de );
        }

        // get the decoded KrbPriv
        KrbPriv krbPriv = ( ( KrbPrivContainer ) krbPrivContainer ).getKrbPriv();

        return krbPriv;
    }
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

        catch ( DecoderException e )
        {
            fail();
        }

        KrbPriv krbPriv = container.getKrbPriv();

        assertEquals( 5, krbPriv.getProtocolVersionNumber() );
        assertEquals( KerberosMessageType.KRB_PRIV, krbPriv.getMessageType() );
        assertNotNull( krbPriv.getEncPart() );

        int encodedLen = krbPriv.computeLength();
        assertEquals( streamLen, encodedLen );

        try
        {
            ByteBuffer bb = ByteBuffer.allocate( encodedLen );
            krbPriv.encode( bb );

            String encoded = Strings.dumpBytes( bb.array() );
            assertEquals( decoded, encoded );
        }
        catch ( EncoderException e )
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

        modifier.setAuthHeader( authHeader );

        byte[] encodedPrivate = new byte[buf.remaining()];
        buf.get( encodedPrivate, 0, buf.remaining() );

        KrbPriv privMessage = KerberosDecoder.decodeKrbPriv( encodedPrivate );

        modifier.setPrivateMessage( privMessage );

        return modifier.getChangePasswordMessage();
    }
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

            // This will generate a PROTOCOL_ERROR
            throw new DecoderException( I18n.err( I18n.ERR_04067 ) );
        }

        KrbPriv krbPriv = new KrbPriv();
        krbPrivContainer.setKrbPriv( krbPriv );

        if ( IS_DEBUG )
        {
            LOG.debug( "KrbPriv created" );
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

        {
            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, de );
        }

        // get the decoded KrbPriv
        KrbPriv krbPriv = ( ( KrbPrivContainer ) krbPrivContainer ).getKrbPriv();

        return krbPriv;
    }
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

        catch( DecoderException e )
        {
            fail();
        }
       
        KrbPriv krbPriv = container.getKrbPriv();
       
        assertEquals( 5, krbPriv.getProtocolVersionNumber() );
        assertEquals( KerberosMessageType.KRB_PRIV, krbPriv.getMessageType() );
        assertNotNull( krbPriv.getEncPart() );
       
        int encodedLen = krbPriv.computeLength();
        assertEquals( streamLen, encodedLen );
       
        try
        {
            ByteBuffer bb = ByteBuffer.allocate( encodedLen );
            krbPriv.encode( bb );
           
            String encoded = Strings.dumpBytes(bb.array());
            assertEquals( decoded, encoded );
        }
        catch( EncoderException e )
View Full Code Here

Examples of org.apache.directory.shared.kerberos.messages.KrbPriv

        {
            throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, de );
        }

        // get the decoded KrbPriv
        KrbPriv krbPriv = ( ( KrbPrivContainer ) krbPrivContainer ).getKrbPriv();

        return krbPriv;
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.