From 648bb38cd85c23137ca385563fe7b3230b971d01 Mon Sep 17 00:00:00 2001 From: Derrick Johnson Date: Mon, 2 Jun 2014 12:13:13 -0400 Subject: [PATCH] updated to get middleware working --- etc/security/keystore.jks | Bin 0 -> 2248 bytes etc/security/prod-hpmiddleware-keystore.jks | Bin 0 -> 8354 bytes etc/security/prod-hpmiddleware-truststore.jks | Bin 0 -> 3236 bytes etc/security/project | 9 +++++++ etc/security/truststore.jks | Bin 0 -> 963 bytes .../com/hpcloud/mon/MonApiApplication.java | 6 ++++- .../middleware/MiddlewareConfiguration.java | 1 + .../servlet/PreAuthenticationFilter.java | 23 ++++++++++++++++-- 8 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 etc/security/keystore.jks create mode 100644 etc/security/prod-hpmiddleware-keystore.jks create mode 100644 etc/security/prod-hpmiddleware-truststore.jks create mode 100644 etc/security/project create mode 100644 etc/security/truststore.jks diff --git a/etc/security/keystore.jks b/etc/security/keystore.jks new file mode 100644 index 0000000000000000000000000000000000000000..df75463bf299cadb70da0bc630eaef8c0e326d98 GIT binary patch literal 2248 zcmcJQcQD+G7RR^hyQ{4dLJ+;=x4IxiTP0RWwnK_?1XXeZ~-!tbNtsSj_Kp@D8fqxkobK)5p znT&~nKyWZXg8cxH3@ow?U>H~i!T|=uK`;{Ri9Z0@)z8MFUYW@rNmu_fam z3*oHhYo(E2vo;)?%agLC&84F+o^ec*i+qMsPH<>Cea>56GK_om3z5c}w);Ulz4e~5 zN|j18?DqzjKmub*-5L;)5-b#&DwFQ$xoU&G(Rh`4H^dVkJ9%LPr{ZE*Q33wVFNiZN z0p;DAHQ$hG6 z_J<8}fnt+qPwi}6b2kTjy`R_%@N@5+4xOwIF- z5e#A}8c)g^oa81)KNa2Ju!h^&<12sls>f+dXqN1|yU~-|3 zyB690xWE6UYnENatc+`78^y=xL6RMN1>Ls1=-rSDTVh&d$Ttl;Z%~2Oh47~@UDVpD z_@-Gw?TfF)tVXEEB~hAN^Eg47Ic>TnV-7wzNYncu!ZR`@|8(${PW2jCl%vtFN|=gq z;jC$Tm;Vf{yd6iuC!;4h4nmz)8E@$gTlb0Xh^P^I#bkGAAd9Ivv62kmf-Lw#fAw~B z2QqmOH)(OR^l3Ewf)%@Gprnp?d#vvR>(bAQ=L4vpcs1WpVcSENqqEc`S-R91jB8tW zJ=G7!duYfzq9A!y^{@>??Ct7kH4rZB`k>wZe1tQe$c5&?PR>7J=h>wcM{6*$D7r-| zKR-AOXAQ@Xnss#PU<;NvlFSuj_%r%_on;Ne%$3e@s9!I)rR7WI9UEWymUxKeklJVt zE$^V!)aY}@JF*EAS;wD;Qk1>;kC;AbEQ-9iv#&&+BUDhG5Y6!Vm1!Q^+0o428U1@G z)rPdhxPhMXk4dgu>EoYL!aMlwr0z$=B7So zSve%YypZldcGr{qpz}~KdXh?A>ImC>Kae3sJkuZ6IMp)hoS%+jk}eAfN-y+snIkp! zudqt#g2a$PIY9%sYpr#6?Y!-md}?Ou%Sk5f?5Dt#tD!3BEgr9<99l{dvPrLi_}R`~ z0U5vXDdx^oy7ia)S*6rR_pKD{H13WDxG%U$1DvDsMQNFPFnIdHtH*HT%r0}8rdSy? zy}x@im~YYSn=Mo9EY{Z7_BWmC!2PKzVmGQLg3CL&ab<|o>@T93Jb3tWJ9}V)QW0W; znSBVg8qKxnfT^~!PQ_3;{~WmY!jVTyQg;aZ03p&Oyn3h`c-SM__y;+3LGefITOP^m zK8Y-&6;2WCM1-1m)O(bmwDlwG8GE4)d+u>h;&{EOR34zX+Il@HwO!9a+XblUdaG_* zTV%qscNE0;v8GXFK^*F>qrN^fFT>4Zy;oc0MlJ`5daC| zLxDoT5C}7-j645hoWC4g&sxVFj2Opf)fDE{M%#3=&}b2~2Eo z8{YtryMHs|e=*D7%m?uN%!jg}2n2$HN094n{4Ea!H^19}5HA9w45%n-0Ln^Aii&o; z2*sbM`Y-(d6()g2|GmkRKL90xQ6PW>W`U5vU{INEZ~bFRP)H%Opqd@=DzbzpcH(+e zrFAiD(YGSUSJSG*0Ybe3^}Y|xHUU5ESmM z#dannUCHODa|^n|TV`8^p8M|Jf^3-S#QF`%g)ae)0u=3n%-e;2`a*A(NiX<(R;zC9 zI#1ghe&xp$w&e`I*1iM?{|t-4P6QAC-wFS@SSK?FgU;}=#C2)-B)rKf zTPvO>o2fU<5CjSQG6oBsR~}<~Gz>7imkO4Qg9&wK@uBhuo7q=(&)?_v;EE5YtqLyj zs%NND9kr0Q;zo0Zz9lJt5wZP`#1!IYcX;rH%F9c>mlkyk zm-}oSzB9@vcAS-!hgR#kjxohG((@}*Mj9TO9mELCwP9shhWUnUA>8d|`MR5C*~e{( z$GCatvE<0^A2aCk9ybGwkoe5&=%dhRNDB^$oEaGoS_|lNx#!0|Qw6w{+@`nyS)Z@R JaQrn=|4(Fp=okP1 literal 0 HcmV?d00001 diff --git a/etc/security/prod-hpmiddleware-keystore.jks b/etc/security/prod-hpmiddleware-keystore.jks new file mode 100644 index 0000000000000000000000000000000000000000..340d991371e5c186040278ad64e51341da5a8066 GIT binary patch literal 8354 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 literal 0 HcmV?d00001 diff --git a/etc/security/prod-hpmiddleware-truststore.jks b/etc/security/prod-hpmiddleware-truststore.jks new file mode 100644 index 0000000000000000000000000000000000000000..538a89b664b9b1f403aad4c78ae2838dae189bbc GIT binary patch literal 3236 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 literal 0 HcmV?d00001 diff --git a/src/main/java/com/hpcloud/mon/MonApiApplication.java b/src/main/java/com/hpcloud/mon/MonApiApplication.java index 3a63cff24..f180a96b8 100644 --- a/src/main/java/com/hpcloud/mon/MonApiApplication.java +++ b/src/main/java/com/hpcloud/mon/MonApiApplication.java @@ -120,6 +120,8 @@ public class MonApiApplication extends Application { authInitParams.put("ConnPoolMinIdleTime", config.middleware.connPoolMinIdleTime); authInitParams.put("ConnRetryTimes", config.middleware.connRetryTimes); authInitParams.put("ConnRetryInterval", config.middleware.connRetryInterval); + authInitParams.put("AdminToken", config.middleware.adminToken); + Dynamic tokenAuthFilter = environment.servlets().addFilter("token-auth", new TokenAuth()); tokenAuthFilter.addMappingForUrlPatterns(null, true, "/"); @@ -131,8 +133,10 @@ public class MonApiApplication extends Application { mockAuthenticationFilter.addMappingForUrlPatterns(null, true, "/"); mockAuthenticationFilter.addMappingForUrlPatterns(null, true, "/v2.0/*"); } + ArrayList list = new ArrayList(); + list.add("heat_stack_owner"); Dynamic postAuthenticationFilter = environment.servlets() - .addFilter("post-auth", new PostAuthenticationFilter(Collections.singletonList(""))); + .addFilter("post-auth", new PostAuthenticationFilter(list));//Collections.singletonList(""))); postAuthenticationFilter.addMappingForUrlPatterns(null, true, "/"); postAuthenticationFilter.addMappingForUrlPatterns(null, true, "/v2.0/*"); diff --git a/src/main/java/com/hpcloud/mon/infrastructure/middleware/MiddlewareConfiguration.java b/src/main/java/com/hpcloud/mon/infrastructure/middleware/MiddlewareConfiguration.java index 384f30c78..036584aae 100644 --- a/src/main/java/com/hpcloud/mon/infrastructure/middleware/MiddlewareConfiguration.java +++ b/src/main/java/com/hpcloud/mon/infrastructure/middleware/MiddlewareConfiguration.java @@ -45,5 +45,6 @@ public class MiddlewareConfiguration { @NotEmpty @JsonProperty public String connPoolMinIdleTime; @NotEmpty @JsonProperty public String connRetryTimes; @NotEmpty @JsonProperty public String connRetryInterval; + @NotEmpty @JsonProperty public String adminToken; @NotNull @JsonProperty public List rolesToMatch; } diff --git a/src/main/java/com/hpcloud/mon/infrastructure/servlet/PreAuthenticationFilter.java b/src/main/java/com/hpcloud/mon/infrastructure/servlet/PreAuthenticationFilter.java index 8705804db..f92f4819e 100644 --- a/src/main/java/com/hpcloud/mon/infrastructure/servlet/PreAuthenticationFilter.java +++ b/src/main/java/com/hpcloud/mon/infrastructure/servlet/PreAuthenticationFilter.java @@ -34,6 +34,7 @@ import org.slf4j.LoggerFactory; import com.hpcloud.mon.resource.exception.Exceptions; import com.hpcloud.mon.resource.exception.Exceptions.FaultType; +import com.hp.csbu.cc.middleware.ExceptionHandler.*; /** * Authenticates requests using header information from the CsMiddleware. Provides the X-TENANT-ID @@ -95,9 +96,27 @@ public class PreAuthenticationFilter implements Filter { res.setContentType(MediaType.APPLICATION_JSON); res.setStatus(responseWrapper.statusCode); String output = Exceptions.buildLoggedErrorMessage(FaultType.UNAUTHORIZED, - responseWrapper.errorMessage, null, responseWrapper.exception); + responseWrapper.errorMessage, null, responseWrapper.exception); out.print(output); - } catch (Exception e) { + }catch(IllegalArgumentException e) { + //CSMiddleware is throwing this error for invalid tokens. + //This problem appears to be fixed in other versions, but they are not approved yet. + try { + String output = Exceptions.buildLoggedErrorMessage(FaultType.UNAUTHORIZED, + "invalid authToken", null, responseWrapper.exception); + out.print(output); + } + catch (Exception x) { + LOG.error("Error while writing failed authentication HTTP response", x); + } finally { + if (out != null) + try { + out.close(); + } catch (IOException ignore) { + } + } + } + catch (Exception e) { LOG.error("Error while writing failed authentication HTTP response", e); } finally { if (out != null)