[ 
https://issues.apache.org/jira/browse/SOLR-9324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15417335#comment-15417335
 ] 

Steve Rowe commented on SOLR-9324:
----------------------------------

Policeman Jenkins found another {{TestSolrCloudWithSecureImpersonation}} NPE 
(doesn't reproduce for me on Linux) 
[http://jenkins.thetaphi.de/job/Lucene-Solr-master-Windows/6041/]:

{noformat}
  [junit4] Suite: org.apache.solr.cloud.TestSolrCloudWithSecureImpersonation
  [junit4]   2> Creating dataDir: 
C:\Users\jenkins\workspace\Lucene-Solr-master-Windows\solr\build\solr-core\test\J1\temp\solr.cloud.TestSolrCloudWithSecureImpersonation_D908C925ECB64765-001\init-core-data-001
  [junit4]   2> 2677891 INFO  
(SUITE-TestSolrCloudWithSecureImpersonation-seed#[D908C925ECB64765]-worker) [   
 ] o.a.s.SolrTestCaseJ4 Randomized ssl (false) and clientAuth (false) via: 
@org.apache.solr.util.RandomizeSSL(reason=, value=NaN, ssl=NaN, clientAuth=NaN)
  [junit4]   2> 2678039 WARN  
(SUITE-TestSolrCloudWithSecureImpersonation-seed#[D908C925ECB64765]-worker) [   
 ] o.a.h.u.NativeCodeLoader Unable to load native-hadoop library for your 
platform... using builtin-java classes where applicable
  [junit4]   2> 2678060 INFO  
(SUITE-TestSolrCloudWithSecureImpersonation-seed#[D908C925ECB64765]-worker) [   
 ] o.a.s.SolrTestCaseJ4 ###deleteCore
  [junit4]   2> NOTE: test params are: 
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST,
 chunkSize=5, maxDocsPerChunk=799, blockSize=4), 
termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, 
chunkSize=5, blockSize=4)), sim=ClassicSimilarity, locale=sr-Latn-BA, 
timezone=America/Guayaquil
  [junit4]   2> NOTE: Windows 10 10.0 x86/Oracle Corporation 1.8.0_102 
(32-bit)/cpus=3,threads=1,free=134681328,total=359464960
  [junit4]   2> NOTE: All tests run in this JVM: [AnalyticsQueryTest, 
SortSpecParsingTest, TestReload, ChaosMonkeySafeLeaderTest, TestCoreDiscovery, 
DebugComponentTest, TestSha256AuthenticationProvider, StatsComponentTest, 
TestImplicitCoreProperties, BlockJoinFacetDistribTest, 
DistributedFacetPivotSmallAdvancedTest, TestCSVResponseWriter, 
TestReloadDeadlock, DirectUpdateHandlerOptimizeTest, 
TestReversedWildcardFilterFactory, HdfsChaosMonkeySafeLeaderTest, 
ShardSplitTest, ZkNodePropsTest, TestSSLRandomization, TestRandomFlRTGCloud, 
TestBinaryField, TestUninvertingReader, TestZkChroot, TestQueryTypes, 
TestBackupRepositoryFactory, HLLSerializationTest, SpellingQueryConverterTest, 
TolerantUpdateProcessorTest, BasicFunctionalityTest, 
ShowFileRequestHandlerTest, TestSolr4Spatial, 
DistributedFacetPivotWhiteBoxTest, TestManagedResourceStorage, 
SearchHandlerTest, TestSolrQueryParser, HdfsBasicDistributedZkTest, 
TestSchemaSimilarityResource, TestQuerySenderListener, SynonymTokenizerTest, 
MigrateRouteKeyTest, TestFieldCache, TestIndexSearcher, 
SuggestComponentContextFilterQueryTest, TestBulkSchemaAPI, 
TestSimpleTrackingShardHandler, ConjunctionSolrSpellCheckerTest, 
ZkSolrClientTest, BasicZkTest, DocValuesMissingTest, TestBinaryResponseWriter, 
TestCollectionAPI, TestConfigSetsAPIExclusivity, 
TestSubQueryTransformerDistrib, DateFieldTest, TestScoreJoinQPNoScore, 
DistributedQueryComponentOptimizationTest, TestWriterPerf, ZkStateWriterTest, 
SuggesterTSTTest, TestExceedMaxTermLength, TestReRankQParserPlugin, 
TlogReplayBufferedWhileIndexingTest, CdcrReplicationDistributedZkTest, 
TestSerializedLuceneMatchVersion, TestSchemaManager, 
TestSuggestSpellingConverter, DateMathParserTest, TestSimpleQParserPlugin, 
TestPHPSerializedResponseWriter, BlobRepositoryCloudTest, TestQueryUtils, 
TestSolrConfigHandlerCloud, JavabinLoaderTest, AutoCommitTest, 
FacetPivotSmallTest, SolrInfoMBeanTest, TestValueSourceCache, 
TestCloudManagedSchema, ConnectionReuseTest, CheckHdfsIndexTest, 
TestMiniSolrCloudClusterSSL, TestCustomDocTransformer, TestRawTransformer, 
BasicDistributedZk2Test, RequestLoggingTest, EchoParamsTest, DeleteShardTest, 
OpenExchangeRatesOrgProviderTest, LoggingHandlerTest, TestDFISimilarityFactory, 
TestNumericTerms32, TestFieldCollectionResource, HdfsSyncSliceTest, 
TestPerFieldSimilarityWithDefaultOverride, DistributedFacetPivotLargeTest, 
IgnoreCommitOptimizeUpdateProcessorFactoryTest, 
DefaultValueUpdateProcessorTest, FileUtilsTest, SecurityConfHandlerTest, 
CSVRequestHandlerTest, TestRealTimeGet, ConnectionManagerTest, TestRTimerTree, 
TestSolrCloudWithKerberosAlt, LeaderInitiatedRecoveryOnCommitTest, 
TestRecovery, DistributedMLTComponentTest, TestTolerantUpdateProcessorCloud, 
TestExactSharedStatsCache, TermVectorComponentDistributedTest, 
CoreAdminCreateDiscoverTest, PluginInfoTest, AtomicUpdatesTest, 
TestSlowCompositeReaderWrapper, DistributedDebugComponentTest, BlockCacheTest, 
CustomCollectionTest, CoreAdminHandlerTest, BlockJoinFacetSimpleTest, 
TestFieldCacheSanityChecker, WordBreakSolrSpellCheckerTest, 
OverseerTaskQueueTest, TestInitQParser, TestCloudDeleteByQuery, 
DirectSolrConnectionTest, TestSubQueryTransformer, 
ConcurrentDeleteAndCreateCollectionTest, TestSolrJ, 
CloneFieldUpdateProcessorFactoryTest, OverseerRolesTest, TestTrieFacet, 
VersionInfoTest, SpatialRPTFieldTypeTest, 
OverseerCollectionConfigSetProcessorTest, TestRTGBase, TestSolr4Spatial2, 
HttpPartitionTest, TestJsonRequest, RemoteQueryErrorTest, MultiTermTest, 
SuggesterTest, ConvertedLegacyTest, SpellCheckComponentTest, 
DistributedTermsComponentTest, RestartWhileUpdatingTest, TestConfigReload, 
TestRangeQuery, SolrCmdDistributorTest, CollectionsAPIDistributedZkTest, 
SpellPossibilityIteratorTest, TestHdfsCloudBackupRestore, 
TestUseDocValuesAsStored2, TestFreeTextSuggestions, OpenCloseCoreStressTest, 
LeaderElectionIntegrationTest, RecoveryZkTest, TestRandomFaceting, 
ShardRoutingCustomTest, TestDistributedSearch, TestJoin, TestCoreContainer, 
SimpleFacetsTest, QueryElevationComponentTest, TestSort, TestFunctionQuery, 
DirectUpdateHandlerTest, TestBadConfig, CurrencyFieldOpenExchangeTest, 
SolrIndexSplitterTest, SpellCheckCollatorTest, DocValuesTest, 
TestRemoteStreaming, TestSurroundQueryParser, 
DocumentAnalysisRequestHandlerTest, PrimitiveFieldTypeTest, TestOmitPositions, 
RequestHandlersTest, PathHierarchyTokenizerFactoryTest, 
TestIndexingPerformance, FieldAnalysisRequestHandlerTest, SolrPluginUtilsTest, 
TestCollationField, UpdateRequestProcessorFactoryTest, MBeansHandlerTest, 
UniqFieldsUpdateProcessorFactoryTest, PingRequestHandlerTest, 
HighlighterConfigTest, SOLR749Test, AlternateDirectoryTest, 
TestSolrIndexConfig, CopyFieldTest, ResponseLogComponentTest, 
TestSolrDeletionPolicy2, NumericFieldsTest, OutputWriterTest, 
ExternalFileFieldSortTest, TestSolrCoreProperties, NotRequiredUniqueKeyTest, 
TestPhraseSuggestions, TestSweetSpotSimilarityFactory, TestPerFieldSimilarity, 
TestLMJelinekMercerSimilarityFactory, TestBM25SimilarityFactory, 
TestJmxMonitoredMap, TestFastOutputStream, TestFastLRUCache, 
PreAnalyzedFieldTest, TestSystemIdResolver, RAMDirectoryFactoryTest, TestUtils, 
UUIDFieldTest, CircularListTest, CursorPagingTest, 
DistributedIntervalFacetingTest, SolrTestCaseJ4Test, TestCrossCoreJoin, 
TestCursorMarkWithoutUniqueKey, TestDistributedMissingSort, 
TestHighlightDedupGrouping, TestEmbeddedSolrServerConstructors, 
TestJettySolrRunner, AliasIntegrationTest, CdcrRequestHandlerTest, 
CdcrVersionReplicationTest, CleanupOldIndexTest, 
CloudExitableDirectoryReaderTest, CollectionStateFormat2Test, 
CollectionsAPISolrJTest, DistribDocExpirationUpdateProcessorTest, 
DistributedVersionInfoTest, OutOfBoxZkACLAndCredentialsProvidersTest, 
OverseerModifyCollectionTest, OverseerStatusTest, ReplicationFactorTest, 
SSLMigrationTest, SaslZkACLProviderTest, SharedFSAutoReplicaFailoverTest, 
SharedFSAutoReplicaFailoverUtilsTest, SolrCLIZkUtilsTest, SolrCloudExampleTest, 
TestCryptoKeys, TestLockTree, TestMiniSolrCloudClusterBase, 
TestRandomRequestDistribution, TestReplicaProperties, TestRequestForwarding, 
TestSolrCloudWithSecureImpersonation]
  [junit4]   2> NOTE: reproduce with: ant test  
-Dtestcase=TestSolrCloudWithSecureImpersonation -Dtests.seed=D908C925ECB64765 
-Dtests.slow=true -Dtests.locale=sr-Latn-BA -Dtests.timezone=America/Guayaquil 
-Dtests.asserts=true -Dtests.file.encoding=UTF-8
  [junit4] ERROR   0.00s J1 | TestSolrCloudWithSecureImpersonation (suite) <<<
  [junit4]    > Throwable #1: 
com.google.common.util.concurrent.UncheckedExecutionException: 
java.lang.NullPointerException
  [junit4]    >         at 
__randomizedtesting.SeedInfo.seed([D908C925ECB64765]:0)
  [junit4]    >         at 
com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2263)
  [junit4]    >         at 
com.google.common.cache.LocalCache.get(LocalCache.java:4000)
  [junit4]    >         at 
com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004)
  [junit4]    >         at 
com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874)
  [junit4]    >         at 
org.apache.hadoop.security.Groups.getGroups(Groups.java:182)
  [junit4]    >         at 
org.apache.solr.cloud.TestSolrCloudWithSecureImpersonation.getUsersFirstGroup(TestSolrCloudWithSecureImpersonation.java:64)
  [junit4]    >         at 
org.apache.solr.cloud.TestSolrCloudWithSecureImpersonation.getImpersonatorSettings(TestSolrCloudWithSecureImpersonation.java:86)
  [junit4]    >         at 
org.apache.solr.cloud.TestSolrCloudWithSecureImpersonation.startup(TestSolrCloudWithSecureImpersonation.java:99)
  [junit4]    >         at java.lang.Thread.run(Thread.java:745)
  [junit4]    > Caused by: java.lang.NullPointerException
  [junit4]    >         at 
java.lang.ProcessBuilder.start(ProcessBuilder.java:1012)
  [junit4]    >         at 
org.apache.hadoop.util.Shell.runCommand(Shell.java:483)
  [junit4]    >         at org.apache.hadoop.util.Shell.run(Shell.java:456)
  [junit4]    >         at 
org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:722)
  [junit4]    >         at 
org.apache.hadoop.util.Shell.execCommand(Shell.java:815)
  [junit4]    >         at 
org.apache.hadoop.util.Shell.execCommand(Shell.java:798)
  [junit4]    >         at 
org.apache.hadoop.security.ShellBasedUnixGroupsMapping.getUnixGroups(ShellBasedUnixGroupsMapping.java:84)
  [junit4]    >         at 
org.apache.hadoop.security.ShellBasedUnixGroupsMapping.getGroups(ShellBasedUnixGroupsMapping.java:52)
  [junit4]    >         at 
org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback.getGroups(JniBasedUnixGroupsMappingWithFallback.java:51)
  [junit4]    >         at 
org.apache.hadoop.security.Groups$GroupCacheLoader.fetchGroupList(Groups.java:239)
  [junit4]    >         at 
org.apache.hadoop.security.Groups$GroupCacheLoader.load(Groups.java:220)
  [junit4]    >         at 
org.apache.hadoop.security.Groups$GroupCacheLoader.load(Groups.java:208)
  [junit4]    >         at 
com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599)
  [junit4]    >         at 
com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379)
  [junit4]    >         at 
com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342)
  [junit4]    >         at 
com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257)
  [junit4]    >         ... 31 moreThrowable #2: java.lang.NullPointerException
  [junit4]    >         at 
__randomizedtesting.SeedInfo.seed([D908C925ECB64765]:0)
  [junit4]    >         at 
org.apache.solr.cloud.TestSolrCloudWithSecureImpersonation.shutdown(TestSolrCloudWithSecureImpersonation.java:154)
  [junit4]    >         at java.lang.Thread.run(Thread.java:745)
  [junit4] Completed [490/627 (1!)] on J1 in 0.22s, 0 tests, 2 errors <<< 
FAILURES!
{noformat}

> Support Secure Impersonation / Proxy User for solr authentication
> -----------------------------------------------------------------
>
>                 Key: SOLR-9324
>                 URL: https://issues.apache.org/jira/browse/SOLR-9324
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: SolrCloud
>            Reporter: Gregory Chanan
>            Assignee: Gregory Chanan
>         Attachments: SOLR-9324-tests.patch, SOLR-9324.patch, SOLR-9324.patch, 
> SOLR-9324.patch, SOLR-9324_branch_6x.patch, build-6025.log
>
>
> Solr should support Proxy User / Secure Impersonation for authentication, as 
> supported by hadoop 
> (http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/Superusers.html)
>  and supported by the hadoop AuthenticationFilter (which we use for the 
> KerberosPlugin).
> There are a number of use cases, but a common one is this:
> There is a front end for searches (say, Hue http://gethue.com/) that supports 
> its own login mechanisms.  If the cluster uses kerberos for authentication, 
> hue must have kerberos credentials for each user, which is a pain to manage.  
> Instead, hue can be allowed to impersonate known users from known machines so 
> it only needs its own kerberos credentials.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to