X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cadi%2Faaf%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fcadi%2Faaf%2Fv2_0%2FAAFAuthn.java;h=c48e35f4d21b7bfa8ab8f91e26cb54de39f6670a;hb=1296352d8eafee57f982a4342ad79ada4aa56d28;hp=ec0875c1af8c5293b1594741e6840ff49aa7bebf;hpb=82093b06399d9a57cd7e486e9fbeeea9d026cc7c;p=aaf%2Fauthz.git diff --git a/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java b/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java index ec0875c1..c48e35f4 100644 --- a/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java +++ b/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java @@ -7,9 +7,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -29,13 +29,14 @@ import org.onap.aaf.cadi.CadiException; import org.onap.aaf.cadi.User; import org.onap.aaf.cadi.aaf.AAFPermission; import org.onap.aaf.cadi.client.Future; -import org.onap.aaf.cadi.client.Rcli; import org.onap.aaf.cadi.lur.ConfigPrincipal; +import aaf.v2_0.CredRequest; + public class AAFAuthn extends AbsUserCache { private AAFCon con; private String realm; - + /** * Configure with Standard AAF properties, Stand alone * @param con @@ -50,17 +51,17 @@ public class AAFAuthn extends AbsUserCache { /** * Configure with Standard AAF properties, but share the Cache (with AAF Lur) * @param con - * @throws Exception + * @throws Exception */ // Package on purpose AAFAuthn(AAFCon con, AbsUserCache cache) { super(cache); this.con = con; } - + /** * Return Native Realm of AAF Instance. - * + * * @return */ public String getRealm() { @@ -69,24 +70,24 @@ public class AAFAuthn extends AbsUserCache { /** * Returns null if ok, or an Error String; - * + * * Convenience function. Passes "null" for State object */ public String validate(String user, String password) throws IOException { return validate(user,password,null); } - + /** * Returns null if ok, or an Error String; - * + * * For State Object, you may put in HTTPServletRequest or AuthzTrans, if available. Otherwise, * leave null - * + * * @param user * @param password * @return - * @throws IOException - * @throws CadiException + * @throws IOException + * @throws CadiException * @throws Exception */ public String validate(String user, String password, Object state) throws IOException { @@ -120,11 +121,11 @@ public class AAFAuthn extends AbsUserCache { return "user/pass combo invalid for " + user; case DENIED: return "AAF denies API for " + user; - default: + default: return "AAFAuthn doesn't handle Principal " + user; } } - + private class AAFCachedPrincipal extends ConfigPrincipal implements CachedPrincipal { private long expires; private long timeToLive; @@ -139,12 +140,16 @@ public class AAFAuthn extends AbsUserCache { try { Miss missed = missed(getName(),getCred()); if (missed==null || missed.mayContinue()) { - Rcli client = con.client().forUser(con.basicAuth(getName(), new String(getCred()))); - Future fp = client.read( - "/authn/basicAuth", - "text/plain" - ); - if (fp.get(con.timeout)) { + CredRequest cr = new CredRequest(); + cr.setId(getName()); + cr.setPassword(new String(getCred())); + Future fp = con.client().readPost("/authn/validate", con.credReqDF, cr); + //Rcli client = con.client().forUser(con.basicAuth(getName(), new String(getCred()))); + //Future fp = client.read( + // "/authn/basicAuth", + // "text/plain" + // ); + if (fp.get(con.timeout)) { expires = System.currentTimeMillis() + timeToLive; addUser(new User(this, expires)); return Resp.REVALIDATED;