You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Best to jump straight to Panda v7, without stopping off on v5/v6 on the way, as the location of the private/public key fields has changed and is eventually removed in favour of the verification/signingAndVerification fields - so avoid multiple changes and jump straight to using those.
Necessary changes to code using Panda
Panda v5:
Use java.security classes in preference to string-wrappers #147 removed the old PublicKey & PrivateKey classes in our com.gu.pandomainauth package, in favour of using the existing java.security classes. To create instances of those classes, we can use the SettingsReader.{privateKeyFor, publicKeyFor} methods.
Refactor Cookie generation-&-parsing #152 means the CookieUtils.generateCookieData() method now communicates errors with CookieResult values containing CookieIntegrityFailure, rather than exceptions.
Panda v7:
Support accepting multiple public keys #150 means that code shouldn't directly reference private or public keys anymore (eg do not reference settings.signingKeyPair). Instead, use settings.signingAndVerification or publicSettings.verification. Note also that publicSettings.publicKey was previously optional, and publicSettings.verification is not.
Guardian services using Panda
ELK logs for Settings.Refresher
Migration pathway
Best to jump straight to Panda v7, without stopping off on v5/v6 on the way, as the location of the private/public key fields has changed and is eventually removed in favour of the
verification
/signingAndVerification
fields - so avoid multiple changes and jump straight to using those.Necessary changes to code using Panda
java.security
classes in preference to string-wrappers #147 removed the oldPublicKey
&PrivateKey
classes in ourcom.gu.pandomainauth
package, in favour of using the existingjava.security
classes. To create instances of those classes, we can use theSettingsReader.{privateKeyFor, publicKeyFor}
methods.PanDomainAuthSettingsRefresher
instances, makepanDomainSettings
aval
#155 requirespanDomainSettings
is aval
, not adef
S3BucketLoader
abstraction, which simplifies constructing aPanDomainAuthSettingsRefresher
and means that Panda is no longer tied to AWS SDK v1. Examples: tagmanager, login.gutoolsCookieUtils.generateCookieData()
method now communicates errors withCookieResult
values containingCookieIntegrityFailure
, rather than exceptions.settings.signingKeyPair
). Instead, usesettings.signingAndVerification
orpublicSettings.verification
. Note also thatpublicSettings.publicKey
was previously optional, andpublicSettings.verification
is not.Services using Panda
Content Production
Trello cards:
PRs:
Newsroom Resilience
WebX
MSS
Investigations & Reporting
Minimum subset of systems we'd want to have on Panda v7 before performing a rotation
The text was updated successfully, but these errors were encountered: