public static UserGroupInformation GetUgi(IpcConnectionContextProtos.IpcConnectionContextProto context) { if (context.HasUserInfo()) { IpcConnectionContextProtos.UserInformationProto userInfo = context.GetUserInfo(); return(GetUgi(userInfo)); } else { return(null); } }
public static UserGroupInformation GetUgi(IpcConnectionContextProtos.UserInformationProto userInfo) { UserGroupInformation ugi = null; string effectiveUser = userInfo.HasEffectiveUser() ? userInfo.GetEffectiveUser() : null; string realUser = userInfo.HasRealUser() ? userInfo.GetRealUser() : null; if (effectiveUser != null) { if (realUser != null) { UserGroupInformation realUserUgi = UserGroupInformation.CreateRemoteUser(realUser ); ugi = UserGroupInformation.CreateProxyUser(effectiveUser, realUserUgi); } else { ugi = UserGroupInformation.CreateRemoteUser(effectiveUser); } } return(ugi); }