Class ChannelBinding


  • public class ChannelBinding
    extends java.lang.Object
    The JGSS accommodates the concept of caller-provided channel binding information. Channel bindings are used to strengthen the quality with which peer entity authentication is provided during context establishment. They enable the JGSS callers to bind the establishment of the a security context to relevant characteristics like addresses or to application specific data.

    The caller initiating the security context must determine the appropriate channel binding values to set in the GSSContext object. The acceptor must provide identical binding in order to validate that received tokens possess correct channel-related characteristics.

    Use of channel bindings is optional in JGSS. Since channel- binding information may be transmitted in context establishment tokens, applications should therefore not use confidential data as channel-binding components.

    See Also:
    GSSContext.setChannelBinding(com.sun.gssapi.ChannelBinding), InetAddress
    • Constructor Summary

      Constructors 
      Constructor Description
      ChannelBinding​(byte[] appData)
      Construct a channel bindings object without any addressing information.
      ChannelBinding​(java.net.InetAddress initAddr, java.net.InetAddress acceptAddr, byte[] appData)
      Construct a channel bindings object that contains all the user specified tags.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)
      Compares two instances of ChannelBinding
      java.net.InetAddress getAcceptorAddress()
      Get the acceptor's address for this channel binding.
      byte[] getApplicationData()
      Get the application specified data for this channel binding.
      java.net.InetAddress getInitiatorAddress()
      Get the initiator's address for this channel binding.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ChannelBinding

        public ChannelBinding​(java.net.InetAddress initAddr,
                              java.net.InetAddress acceptAddr,
                              byte[] appData)
        Construct a channel bindings object that contains all the user specified tags.
        Parameters:
        initAddr - the address of the context initiator
        acceptAddr - address of the context acceptor
        appData - a byte array of application data to be used as part of the channel-binding
      • ChannelBinding

        public ChannelBinding​(byte[] appData)
        Construct a channel bindings object without any addressing information.
        Parameters:
        appData - a byte array of application data to be used as part of the channel-binding
    • Method Detail

      • getInitiatorAddress

        public java.net.InetAddress getInitiatorAddress()
        Get the initiator's address for this channel binding.
        Returns:
        the initiator's address. null if no address information is contained
      • getAcceptorAddress

        public java.net.InetAddress getAcceptorAddress()
        Get the acceptor's address for this channel binding.
        Returns:
        the acceptor's address. null if no address information is contained
      • getApplicationData

        public byte[] getApplicationData()
        Get the application specified data for this channel binding. The byte array is not copied.
        Returns:
        byte[] the application data that comprises this channel-binding
      • equals

        public boolean equals​(java.lang.Object obj)
        Compares two instances of ChannelBinding
        Overrides:
        equals in class java.lang.Object
        Returns:
        true if objects are the same