001package com.nimbusds.openid.connect.sdk.claims; 002 003 004import net.jcip.annotations.Immutable; 005 006import com.nimbusds.oauth2.sdk.id.Identifier; 007 008 009/** 010 * Authentication Context Class Reference ({@code acr}). It identifies the 011 * authentication context, i.e. the information that the relying party may 012 * require before it makes an entitlements decision with respect to an 013 * authentication response. Such context may include, but is not limited to, 014 * the actual authentication method used or level of assurance such as 015 * ITU-T X.1254 | ISO/IEC 29115 entity authentication assurance level. 016 * 017 * <p>The ACR is represented by a string or an URL string. This class is 018 * immutable. 019 * 020 * <p>Related specifications: 021 * 022 * <ul> 023 * <li>OpenID Connect Messages 1.0, section 2.1.2.1. 024 * <li>RFC 6711 025 * <li>See ISO/IEC DIS 29115 026 * </ul> 027 * 028 * @author Vladimir Dzhuvinov 029 */ 030@Immutable 031public final class ACR extends Identifier { 032 033 034 /** 035 * Creates a new Authentication Context Class Reference (ACR) with the 036 * specified value. 037 * 038 * @param value The ACR value. Must not be {@code null}. 039 */ 040 public ACR(final String value) { 041 042 super(value); 043 } 044 045 046 @Override 047 public boolean equals(final Object object) { 048 049 return object instanceof ACR && 050 this.toString().equals(object.toString()); 051 } 052}