001/* 002 * Licensed to the Apache Software Foundation (ASF) under one 003 * or more contributor license agreements. See the NOTICE file 004 * distributed with this work for additional information 005 * regarding copyright ownership. The ASF licenses this file 006 * to you under the Apache License, Version 2.0 (the 007 * "License"); you may not use this file except in compliance 008 * with the License. You may obtain a copy of the License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, 013 * software distributed under the License is distributed on an 014 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 015 * KIND, either express or implied. See the License for the 016 * specific language governing permissions and limitations 017 * under the License. 018 */ 019package org.apache.shiro.authc; 020 021/** 022 * A {@code HostAuthenticationToken} retains the host information from where 023 * an authentication attempt originates. 024 * 025 * @since 1.0 026 */ 027public interface HostAuthenticationToken extends AuthenticationToken { 028 029 /** 030 * Returns the host name of the client from where the 031 * authentication attempt originates or if the Shiro environment cannot or 032 * chooses not to resolve the hostname to improve performance, this method 033 * returns the String representation of the client's IP address. 034 * <p/> 035 * When used in web environments, this value is usually the same as the 036 * {@code ServletRequest.getRemoteHost()} value. 037 * 038 * @return the fully qualified name of the client from where the 039 * authentication attempt originates or the String representation 040 * of the client's IP address is hostname resolution is not 041 * available or disabled. 042 */ 043 String getHost(); 044}