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, software 013* distributed under the License is distributed on an "AS IS" BASIS, 014* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 015* See the License for the specific language governing permissions and 016* limitations under the License. 017*/ 018 019package org.apache.hadoop.yarn.security; 020 021import java.lang.annotation.Annotation; 022 023import org.apache.hadoop.classification.InterfaceAudience.Public; 024import org.apache.hadoop.classification.InterfaceStability.Stable; 025import org.apache.hadoop.conf.Configuration; 026import org.apache.hadoop.security.KerberosInfo; 027import org.apache.hadoop.security.SecurityInfo; 028import org.apache.hadoop.security.token.TokenIdentifier; 029import org.apache.hadoop.security.token.TokenInfo; 030import org.apache.hadoop.security.token.TokenSelector; 031import org.apache.hadoop.yarn.api.ContainerManagementProtocolPB; 032 033@Public 034@Stable 035public class ContainerManagerSecurityInfo extends SecurityInfo { 036 037 @Override 038 public KerberosInfo getKerberosInfo(Class<?> protocol, Configuration conf) { 039 return null; 040 } 041 042 @Override 043 public TokenInfo getTokenInfo(Class<?> protocol, Configuration conf) { 044 if (!protocol 045 .equals(ContainerManagementProtocolPB.class)) { 046 return null; 047 } 048 return new TokenInfo() { 049 050 @Override 051 public Class<? extends Annotation> annotationType() { 052 return null; 053 } 054 055 @Override 056 public Class<? extends TokenSelector<? extends TokenIdentifier>> 057 value() { 058 return NMTokenSelector.class; 059 } 060 }; 061 062 } 063 064}