Author: stillalex
Date: Fri Jul 20 07:17:34 2018
New Revision: 1836326
URL: http://svn.apache.org/viewvc?rev=1836326&view=rev
Log:
OAK-6662 Extend CredentialsSupport pluggability
Added:
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/AbstractCredentials.java
- copied unchanged from r1809178,
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/AbstractCredentials.java
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java
- copied, changed from r1809179,
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java
- copied, changed from r1809179,
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java
Modified:
jackrabbit/oak/branches/1.6/ (props changed)
jackrabbit/oak/branches/1.6/oak-core/ (props changed)
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImpl.java
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CredentialsSupport.java
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/SimpleCredentialsSupport.java
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/package-info.java
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TestCredentialsSupport.java
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImplOSGiTest.java
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenLoginModuleCredentialsSupportTest.java
Propchange: jackrabbit/oak/branches/1.6/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Jul 20 07:17:34 2018
@@ -1,3 +1,3 @@
/jackrabbit/oak/branches/1.0:1665962
-/jackrabbit/oak/trunk:1781068,1781075,1781248,1781386,1781846,1781907,1782000,1782029,1782196,1782447,1782476,1782770,1782945,1782966,1782973,1782990,1783061,1783066,1783089,1783104-1783105,1783110,1783619,1783720,1783731,1783733,1783738,1783742,1783773,1783855,1783891,1784023,1784034,1784130,1784162,1784251,1784401,1784551,1784574,1784689,1785095,1785108,1785283,1785652,1785838,1785916-1785917,1785919,1785946,1786122,1787074,1787145,1787151,1787217,1787425,1788056,1788378,1788387-1788389,1788463,1788476,1788850,1789056,1789534,1789925,1789940,1789987,1790006,1790013,1790069,1790077,1790079,1790382,1790502-1790503,1792049,1792463,1792742,1792746,1793013,1793088,1793618,1793627,1793644,1794393,1794417,1794683,1795138,1795314,1795330,1795475,1795488,1795491,1795502,1795594,1795613,1795618,1796144,1796230,1796239,1796274,1796278,1796988,1797378,1798035,1798832,1798834,1799219,1799389,1799393,1799924,1800244,1800269,1800606,1800613,1800974,1801011,1801013,1801118-1801119,1801675,1802260
,1802262,1802286,1802548,1802905,1802934,1802938,1802973,1803026,1803247-1803249,1803951,1803953-1803955,1804437,1805851-1805852,1806668,1807308,1807688,1808022,1808125,1808128,1808142,1808240,1808246,1809024,1809026,1809131,1809163,1809253,1809255-1809256,1809289,1809745,1811071-1811072,1811155,1811380,1811655,1811952,1811963,1811986,1813192,1813538,1814189,1814332,1814397,1815201,1815438,1815926,1817326,1817919,1817987-1817988,1817990,1818038,1818042,1818056,1818124,1818554,1818576,1818645,1819048,1819050,1821325,1821358,1821495,1821516,1821847,1822850,1823172,1823655,1825471,1826237,1826338,1826532,1826640,1826932,1826957,1827472,1827486,1827977,1829527,1829569,1829987,1830019,1830160,1830748,1831374,1832379,1832535,1833308,1834648-1834649,1834681,1835060
+/jackrabbit/oak/trunk:1781068,1781075,1781248,1781386,1781846,1781907,1782000,1782029,1782196,1782447,1782476,1782770,1782945,1782966,1782973,1782990,1783061,1783066,1783089,1783104-1783105,1783110,1783619,1783720,1783731,1783733,1783738,1783742,1783773,1783855,1783891,1784023,1784034,1784130,1784162,1784251,1784401,1784551,1784574,1784689,1785095,1785108,1785283,1785652,1785838,1785916-1785917,1785919,1785946,1786122,1787074,1787145,1787151,1787217,1787425,1788056,1788378,1788387-1788389,1788463,1788476,1788850,1789056,1789534,1789925,1789940,1789987,1790006,1790013,1790069,1790077,1790079,1790382,1790502-1790503,1792049,1792463,1792742,1792746,1793013,1793088,1793618,1793627,1793644,1794393,1794417,1794683,1795138,1795314,1795330,1795475,1795488,1795491,1795502,1795594,1795613,1795618,1796144,1796230,1796239,1796274,1796278,1796988,1797378,1798035,1798832,1798834,1799219,1799389,1799393,1799924,1800244,1800269,1800606,1800613,1800974,1801011,1801013,1801118-1801119,1801675,1802260
,1802262,1802286,1802548,1802905,1802934,1802938,1802973,1803026,1803247-1803249,1803951,1803953-1803955,1804437,1805851-1805852,1806668,1807308,1807688,1808022,1808125,1808128,1808142,1808240,1808246,1809024,1809026,1809131,1809163,1809178-1809179,1809253,1809255-1809256,1809289,1809745,1811071-1811072,1811155,1811380,1811655,1811952,1811963,1811986,1813192,1813538,1814189,1814332,1814397,1815201,1815438,1815926,1817326,1817919,1817987-1817988,1817990,1818038,1818042,1818056,1818124,1818554,1818576,1818645,1819048,1819050,1821325,1821358,1821495,1821516,1821847,1822850,1823172,1823655,1825471,1826237,1826338,1826532,1826640,1826932,1826957,1827472,1827486,1827977,1829527,1829569,1829987,1830019,1830160,1830748,1831374,1832379,1832535,1833308,1834648-1834649,1834681,1835060
/jackrabbit/trunk:1345480
Propchange: jackrabbit/oak/branches/1.6/oak-core/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Jul 20 07:17:34 2018
@@ -1,6 +1,6 @@
/jackrabbit/oak/branches/1.0/oak-core:1665962
/jackrabbit/oak/trunk:1834823
/jackrabbit/oak/trunk/oak-blob-plugins:1819950
-/jackrabbit/oak/trunk/oak-core:1781068,1781075,1781248,1781386,1781846,1781907,1782000,1782029,1782196,1782447,1782476,1782770,1782945,1782966,1782973,1782990,1783061,1783066,1783089,1783104-1783105,1783110,1783619,1783720,1783731,1783733,1783738,1783742,1783773,1783855,1783891,1784023,1784034,1784130,1784162,1784251,1784401,1784551,1784574,1784689,1785095,1785108,1785283,1785652,1785838,1785917,1785919,1785946,1786122,1787074,1787145,1787151,1787217,1787425,1788056,1788378,1788387-1788389,1788463,1788476,1788850,1789056,1789441,1789534,1789925,1789940,1789987,1790006,1790013,1790069,1790077,1790079,1790382,1792049,1792463,1792742,1792746,1793013,1793088,1793618,1793627,1793644,1794393,1794417,1794683,1795138,1795314,1795330,1795475,1795488,1795491,1795502,1795594,1795613,1795618,1796144,1796230,1796239,1796274,1796278,1796988,1797378,1798035,1798832,1798834,1799219,1799389,1799393,1799861,1799924,1800269,1800606,1800613,1800974,1801011,1801013,1801118-1801119,1801675,1802260,180226
2,1802286,1802548,1802905,1802934,1802938,1802973,1803026,1803247-1803249,1803951,1803953-1803955,1804437,1805851-1805852,1806668,1807308,1807688,1808125,1808128,1808142,1808240,1808246,1809024,1809026,1809131,1809163,1809253,1809255-1809256,1811380,1811952,1811963,1811986,1814332,1818645,1821325,1821358,1821516,1830160
+/jackrabbit/oak/trunk/oak-core:1781068,1781075,1781248,1781386,1781846,1781907,1782000,1782029,1782196,1782447,1782476,1782770,1782945,1782966,1782973,1782990,1783061,1783066,1783089,1783104-1783105,1783110,1783619,1783720,1783731,1783733,1783738,1783742,1783773,1783855,1783891,1784023,1784034,1784130,1784162,1784251,1784401,1784551,1784574,1784689,1785095,1785108,1785283,1785652,1785838,1785917,1785919,1785946,1786122,1787074,1787145,1787151,1787217,1787425,1788056,1788378,1788387-1788389,1788463,1788476,1788850,1789056,1789441,1789534,1789925,1789940,1789987,1790006,1790013,1790069,1790077,1790079,1790382,1792049,1792463,1792742,1792746,1793013,1793088,1793618,1793627,1793644,1794393,1794417,1794683,1795138,1795314,1795330,1795475,1795488,1795491,1795502,1795594,1795613,1795618,1796144,1796230,1796239,1796274,1796278,1796988,1797378,1798035,1798832,1798834,1799219,1799389,1799393,1799861,1799924,1800269,1800606,1800613,1800974,1801011,1801013,1801118-1801119,1801675,1802260,180226
2,1802286,1802548,1802905,1802934,1802938,1802973,1803026,1803247-1803249,1803951,1803953-1803955,1804437,1805851-1805852,1806668,1807308,1807688,1808125,1808128,1808142,1808240,1808246,1809024,1809026,1809131,1809163,1809178-1809179,1809253,1809255-1809256,1811380,1811952,1811963,1811986,1814332,1818645,1821325,1821358,1821516,1830160
/jackrabbit/oak/trunk/oak-store-document:1809866,1811575,1811702,1811709,1811823,1811835,1811931,1812739,1812750,1812753,1814407,1814499,1814579,1815450,1815466,1815940,1816436,1817379,1818301,1818303,1818903,1818906,1819421,1820199,1820661,1821130,1821477,1821487,1823163,1823169,1824962,1825442,1825470,1834610,1834823
/jackrabbit/trunk/oak-core:1345480
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImpl.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImpl.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImpl.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImpl.java
Fri Jul 20 07:17:34 2018
@@ -17,12 +17,19 @@
package org.apache.jackrabbit.oak.security.authentication.token;
import java.security.Principal;
+import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+
import javax.annotation.Nonnull;
+import com.google.common.base.Supplier;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableSet;
+
import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Properties;
@@ -30,6 +37,7 @@ import org.apache.felix.scr.annotations.
import org.apache.felix.scr.annotations.Reference;
import org.apache.felix.scr.annotations.ReferenceCardinality;
import org.apache.felix.scr.annotations.ReferencePolicy;
+import org.apache.felix.scr.annotations.References;
import org.apache.felix.scr.annotations.Service;
import org.apache.jackrabbit.oak.api.Root;
import org.apache.jackrabbit.oak.spi.commit.MoveTracker;
@@ -38,6 +46,7 @@ import org.apache.jackrabbit.oak.spi.sec
import org.apache.jackrabbit.oak.spi.security.ConfigurationParameters;
import org.apache.jackrabbit.oak.spi.security.SecurityConfiguration;
import org.apache.jackrabbit.oak.spi.security.SecurityProvider;
+import
org.apache.jackrabbit.oak.spi.security.authentication.credentials.CompositeCredentialsSupport;
import
org.apache.jackrabbit.oak.spi.security.authentication.credentials.CredentialsSupport;
import
org.apache.jackrabbit.oak.spi.security.authentication.credentials.SimpleCredentialsSupport;
import
org.apache.jackrabbit.oak.spi.security.authentication.token.TokenConfiguration;
@@ -75,12 +84,17 @@ import org.apache.jackrabbit.oak.spi.sec
description = "Size of the salt used to generate the hash.",
intValue = PasswordUtil.DEFAULT_SALT_SIZE)
})
-public class TokenConfigurationImpl extends ConfigurationBase implements
TokenConfiguration {
-
+@References({
@Reference(
- cardinality = ReferenceCardinality.OPTIONAL_UNARY,
+ name = "credentialsSupport",
+ referenceInterface = CredentialsSupport.class,
+ cardinality = ReferenceCardinality.OPTIONAL_MULTIPLE,
policy = ReferencePolicy.DYNAMIC)
- private CredentialsSupport credentialsSupport =
SimpleCredentialsSupport.getInstance();
+})
+public class TokenConfigurationImpl extends ConfigurationBase implements
TokenConfiguration {
+
+ private final Map<String, CredentialsSupport> credentialsSupport = new
ConcurrentHashMap<>(
+ ImmutableMap.of(SimpleCredentialsSupport.class.getName(),
SimpleCredentialsSupport.getInstance()));
@SuppressWarnings("UnusedDeclaration")
public TokenConfigurationImpl() {
@@ -98,17 +112,12 @@ public class TokenConfigurationImpl exte
setParameters(ConfigurationParameters.of(properties));
}
- @SuppressWarnings("UnusedDeclaration")
public void bindCredentialsSupport(CredentialsSupport credentialsSupport) {
- this.credentialsSupport = credentialsSupport;
+ this.credentialsSupport.put(credentialsSupport.getClass().getName(),
credentialsSupport);
}
- @SuppressWarnings("UnusedDeclaration")
public void unbindCredentialsSupport(CredentialsSupport
credentialsSupport) {
- if (credentialsSupport == this.credentialsSupport) {
- // reset to default implementation
- this.credentialsSupport = SimpleCredentialsSupport.getInstance();
- }
+
this.credentialsSupport.remove(credentialsSupport.getClass().getName());
}
//----------------------------------------------< SecurityConfiguration
>---
@@ -136,6 +145,19 @@ public class TokenConfigurationImpl exte
@Override
public TokenProvider getTokenProvider(Root root) {
UserConfiguration uc =
getSecurityProvider().getConfiguration(UserConfiguration.class);
- return new TokenProviderImpl(root, getParameters(), uc,
credentialsSupport);
+ return new TokenProviderImpl(root, getParameters(), uc,
newCredentialsSupport());
+ }
+
+ private CredentialsSupport newCredentialsSupport() {
+ if (!credentialsSupport.isEmpty()) {
+ return CompositeCredentialsSupport.newInstance(new
Supplier<Collection<CredentialsSupport>>() {
+ @Override
+ public Collection<CredentialsSupport> get() {
+ return ImmutableSet.copyOf(credentialsSupport.values());
+ }
+ });
+ } else {
+ return SimpleCredentialsSupport.getInstance();
+ }
}
}
\ No newline at end of file
Copied:
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java
(from r1809179,
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java)
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java?p2=jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java&p1=jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java&r1=1809179&r2=1836326&rev=1836326&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupport.java
Fri Jul 20 07:17:34 2018
@@ -16,19 +16,20 @@
*/
package org.apache.jackrabbit.oak.spi.security.authentication.credentials;
+import static com.google.common.collect.Maps.newHashMap;
+import static com.google.common.collect.Sets.newHashSet;
+
import java.util.Collection;
import java.util.Map;
import java.util.Set;
-import java.util.function.Supplier;
import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
import javax.jcr.Credentials;
+import com.google.common.base.Supplier;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
-import static com.google.common.collect.Sets.newHashSet;
-import static com.google.common.collect.Maps.newHashMap;
/**
* Composite implementation of the
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CredentialsSupport.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CredentialsSupport.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CredentialsSupport.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CredentialsSupport.java
Fri Jul 20 07:17:34 2018
@@ -33,7 +33,7 @@ public interface CredentialsSupport {
/**
* Returns all {@link Credentials credentials} classes supported by this
- * implemenation.
+ * implementation.
*
* @return the supported {@link Credentials credentials} classes.
*/
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/SimpleCredentialsSupport.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/SimpleCredentialsSupport.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/SimpleCredentialsSupport.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/SimpleCredentialsSupport.java
Fri Jul 20 07:17:34 2018
@@ -29,8 +29,9 @@ import com.google.common.collect.Immutab
import com.google.common.collect.Maps;
/**
- * Implementation of the {@code SupportedCredentials} interface that handles
- * {@link javax.jcr.SimpleCredentials}.
+ * Implementation of the
+ * {@link
org.apache.jackrabbit.oak.spi.security.authentication.credentials.CredentialsSupport}
+ * interface that handles {@link javax.jcr.SimpleCredentials}.
*/
public final class SimpleCredentialsSupport implements CredentialsSupport {
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/package-info.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/package-info.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/package-info.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/package-info.java
Fri Jul 20 07:17:34 2018
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-@Version("2.0.0")
+@Version("2.1.0")
package org.apache.jackrabbit.oak.spi.security.authentication.credentials;
import aQute.bnd.annotation.Version;
\ No newline at end of file
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TestCredentialsSupport.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TestCredentialsSupport.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TestCredentialsSupport.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TestCredentialsSupport.java
Fri Jul 20 07:17:34 2018
@@ -23,7 +23,10 @@ import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
import javax.jcr.Credentials;
+import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Maps;
+
import
org.apache.jackrabbit.oak.spi.security.authentication.credentials.CredentialsSupport;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -67,7 +70,7 @@ public class TestCredentialsSupport impl
if (credentials instanceof Creds) {
return ((Creds) credentials).attributes;
} else {
- throw new IllegalArgumentException();
+ return ImmutableMap.of();
}
}
@@ -77,16 +80,16 @@ public class TestCredentialsSupport impl
((Creds) credentials).attributes.putAll(attributes);
return true;
} else {
- throw new IllegalArgumentException();
+ return false;
}
}
static final class Creds implements Credentials {
- private final Map attributes;
+ private final Map<String, Object> attributes;
Creds() {
- attributes = new HashMap();
+ attributes = Maps.newHashMap();
attributes.put(TokenConstants.TOKEN_ATTRIBUTE, "");
}
}
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImplOSGiTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImplOSGiTest.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImplOSGiTest.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenConfigurationImplOSGiTest.java
Fri Jul 20 07:17:34 2018
@@ -75,7 +75,7 @@ public class TokenConfigurationImplOSGiT
TokenProvider tp = tokenConfiguration.getTokenProvider(root);
- assertFalse(tp.doCreateToken(sc));
+ assertTrue(tp.doCreateToken(sc));
assertTrue(tp.doCreateToken(new TestCredentialsSupport.Creds()));
}
@@ -85,7 +85,7 @@ public class TokenConfigurationImplOSGiT
ServiceRegistration registration =
context.bundleContext().registerService(CredentialsSupport.class.getName(),
testSupport, new Hashtable());
TokenProvider tp = tokenConfiguration.getTokenProvider(root);
- assertFalse(tp.doCreateToken(sc));
+ assertTrue(tp.doCreateToken(sc));
assertTrue(tp.doCreateToken(new TestCredentialsSupport.Creds()));
registration.unregister();
Modified:
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenLoginModuleCredentialsSupportTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenLoginModuleCredentialsSupportTest.java?rev=1836326&r1=1836325&r2=1836326&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenLoginModuleCredentialsSupportTest.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/token/TokenLoginModuleCredentialsSupportTest.java
Fri Jul 20 07:17:34 2018
@@ -18,6 +18,8 @@ package org.apache.jackrabbit.oak.securi
import java.util.Collections;
import java.util.Map;
+
+import javax.jcr.SimpleCredentials;
import javax.security.auth.login.AppConfigurationEntry;
import javax.security.auth.login.Configuration;
@@ -41,6 +43,7 @@ public class TokenLoginModuleCredentials
private TokenConfigurationImpl tc;
private CredentialsSupport credentialsSupport;
+ @Override
@Before
public void before() throws Exception {
super.before();
@@ -108,4 +111,24 @@ public class TokenLoginModuleCredentials
cs.close();
}
}
+
+ @Test
+ public void testSimpleCredentials() throws Exception {
+ SimpleCredentials credentials = (SimpleCredentials)
getAdminCredentials();
+ credentials.setAttribute(TokenConstants.TOKEN_ATTRIBUTE, "");
+
+ ContentSession cs = null;
+ try {
+ cs = login(credentials);
+ assertEquals(credentials.getUserID(),
cs.getAuthInfo().getUserID());
+ String token =
credentials.getAttribute(TokenConstants.TOKEN_ATTRIBUTE).toString();
+ assertFalse(token.isEmpty());
+ cs.close();
+ } finally {
+
+ if (cs != null) {
+ cs.close();
+ }
+ }
+ }
}
Copied:
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java
(from r1809179,
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java)
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java?p2=jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java&p1=jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java&r1=1809179&r2=1836326&rev=1836326&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java
(original)
+++
jackrabbit/oak/branches/1.6/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/credentials/CompositeCredentialsSupportTest.java
Fri Jul 20 07:17:34 2018
@@ -16,12 +16,14 @@
*/
package org.apache.jackrabbit.oak.spi.security.authentication.credentials;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import javax.jcr.Credentials;
import javax.jcr.SimpleCredentials;
+import com.google.common.base.Supplier;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
@@ -40,7 +42,12 @@ public class CompositeCredentialsSupport
private final TestCredentialsSupport tcs = new TestCredentialsSupport();
private final CredentialsSupport credentialsSupport =
CompositeCredentialsSupport
- .newInstance(() ->
newHashSet(SimpleCredentialsSupport.getInstance(), tcs));
+ .newInstance(new Supplier<Collection<CredentialsSupport>>() {
+ @Override
+ public Collection<CredentialsSupport> get() {
+ return newHashSet(SimpleCredentialsSupport.getInstance(),
tcs);
+ }
+ });
@Test
public void testGetCredentialClasses() {
@@ -131,7 +138,7 @@ public class CompositeCredentialsSupport
@Override
public Set<Class> getCredentialClasses() {
- return ImmutableSet.of(TestCredentials.class);
+ return ImmutableSet.<Class>of(TestCredentials.class);
}
@Override