<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<base href="https://issues.shibboleth.net/jira">
<title>Message Title</title>
</head>
<body class="jira" style="color: #333333; font-family: Arial, sans-serif; font-size: 14px; line-height: 1.429">
<table id="background-table" cellpadding="0" cellspacing="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; background-color: #f5f5f5; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt" bgcolor="#f5f5f5">
<!-- header here -->
<tbody>
<tr>
<td id="header-pattern-container" style="padding: 0px; border-collapse: collapse; padding: 10px 20px">
<table id="header-pattern" cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td id="header-avatar-image-container" valign="top" style="padding: 0px; border-collapse: collapse; vertical-align: top; width: 32px; padding-right: 8px" width="32"> <img id="header-avatar-image" class="image_fix" src="cid:jira-generated-image-avatar-64fa8987-09e9-40b5-beec-82152b0f943b" height="32" width="32" border="0" style="border-radius: 3px; vertical-align: top"> </td>
<td id="header-text-container" valign="middle" style="padding: 0px; border-collapse: collapse; vertical-align: middle; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 1px"> <a class="user-hover" rel="20089374@marist.edu" id="email_20089374@marist.edu" href="https://issues.shibboleth.net/jira/secure/ViewProfile.jspa?name=20089374%40marist.edu" style="color:#0052cc;; color: #3b73af; text-decoration: none">Joseph K Fischetti</a> <strong>commented</strong> on <a href="https://issues.shibboleth.net/jira/browse/IDP-1522" style="color: #3b73af; text-decoration: none"><img src="cid:jira-generated-image-avatar-74aae609-4410-4a42-962c-00e00342c352" height="16" width="16" border="0" align="absmiddle" alt="New Feature"> IDP-1522</a> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td id="email-content-container" style="padding: 0px; border-collapse: collapse; padding: 0 20px">
<table id="email-content-table" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; border-spacing: 0; border-collapse: separate">
<tbody>
<tr>
<!-- there needs to be content in the cell for it to render in some clients -->
<td class="email-content-rounded-top mobile-expand" style="padding: 0px; border-collapse: collapse; color: #ffffff; padding: 0 15px 0 16px; height: 15px; background-color: #ffffff; border-left: 1px solid #cccccc; border-top: 1px solid #cccccc; border-right: 1px solid #cccccc; border-bottom: 0; border-top-right-radius: 5px; border-top-left-radius: 5px; height: 10px; line-height: 10px; padding: 0 15px 0 16px; mso-line-height-rule: exactly" height="10" bgcolor="#ffffff"> </td>
</tr>
<tr>
<td class="email-content-main mobile-expand " style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff" bgcolor="#ffffff">
<table class="page-title-pattern" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td style="vertical-align: top;; padding: 0px; border-collapse: collapse; padding-right: 5px; font-size: 20px; line-height: 30px; mso-line-height-rule: exactly" class="page-title-pattern-header-container"> <span class="page-title-pattern-header" style="font-family: Arial, sans-serif; padding: 0; font-size: 20px; line-height: 30px; mso-text-raise: 2px; mso-line-height-rule: exactly; vertical-align: middle"> <a href="https://issues.shibboleth.net/jira/browse/IDP-1522" style="color: #3b73af; text-decoration: none">Re: Support for encrypted attributes in the resolver</a> </span> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td id="text-paragraph-pattern-top" class="email-content-main mobile-expand comment-top-pattern" style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff; border-bottom: none; padding-bottom: 0" bgcolor="#ffffff">
<table class="text-paragraph-pattern" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 2px">
<tbody>
<tr>
<td class="text-paragraph-pattern-container mobile-resize-text " style="padding: 0px; border-collapse: collapse; padding: 0 0 10px 0"> <p style="margin: 10px 0 0 0; margin-top: 0">I have this (mostly) working.</p> <p style="margin: 10px 0 0 0">I did have to provide a new class (BasicKeyStrategy) which is capable of JUST having a key (instead of linking to a keystore, which is what BasicKeystoreStrategy does).</p> <p style="margin: 10px 0 0 0">Attribute definition is provided by specifying the type "Decrypted", with a key. </p> <p style="margin: 10px 0 0 0">That looks like the following:</p> <p style="margin: 10px 0 0 0"><AttributeDefinition xsi:type="Decrypted" id="encryptedOne" key="my32characterdecryptionkey123456"><br> <InputDataConnector ref="staticEncrypted" attributeNames="encryptedOne"/><br> </AttributeDefinition></p> <p style="margin: 10px 0 0 0"><AttributeDefinition xsi:type="Decrypted" id="encryptedWithKey" key="my32characterdecryptionkey123456"><br> <InputDataConnector ref="staticEncrypted" attributeNames="encryptedTwo"/><br> </AttributeDefinition></p> <p style="margin: 10px 0 0 0"> </p> <p style="margin: 10px 0 0 0">There's a new DecryptedAttributeDefinition class which handles the attribute decryption. When it gets initialized, it initializes a DataSealer with a BasicKeyStrategy (from the key in the definition).</p> <p style="margin: 10px 0 0 0">The last thing I need to do is make sure the decrypted value can actually be written back to the IdPAttribute. Currently its running the 'merge attributes' that the SimpleAttributeDefinition does, and THEN it runs through each one to decrypt (and spit it out to the logs).</p> <p style="margin: 10px 0 0 0">Logs of the test cases below:</p> <p style="margin: 10px 0 0 0">DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.spring.ad.impl.DecryptedAttributeDefinitionParser:59]</span> - Attribute Definition 'encryptedOne': Setting key to 'my32characterdecryptionkey123456'.<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.spring.ad.impl.DecryptedAttributeDefinitionParser:59]</span> - Attribute Definition 'encryptedWithKey': Setting key to 'my32characterdecryptionkey123456'.<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:126]</span> - Attribute Definition 'encryptedOne': Initialized DataSealer and Key Strategy for attribute decryption<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:126]</span> - Attribute Definition 'encryptedWithKey': Initialized DataSealer and Key Strategy for attribute decryption<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:91]</span> - Attribute Definition 'encryptedOne': Encrypted Attribute Value: AANrZXkYWcHiR/bUhcBjN/UA2Nd3PXA3Li9lzDuHNeislR4Bb5SNiXItYiiBnjYbKPY4+tnOccSY76rI+w71xAQZogcaNzq5xawdamGQbL3q61g=<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:97]</span> - Attribute Definition 'encryptedOne':: Attempted decryption using DataSealer key provided: VRVGNOMLYRYYGJLA</p> <p style="margin: 10px 0 0 0">DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:91]</span> - Attribute Definition 'encryptedWithKey': Encrypted Attribute Value: AANrZXn3ozgYXbAc8evbXNkJDfpiOhnl/vYx907aT1N6FFvJwu57LHPMx0Yq57Q/Eo/MabrOJBUKcPTrl7IKI4MB1Ume+G/uYKkdGt8X5ecLhD4=<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:97]</span> - Attribute Definition 'encryptedWithKey':: Attempted decryption using DataSealer key provided: QPFRNDWKYLJJOSMW</p> <p style="margin: 10px 0 0 0">DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:91]</span> - Attribute Definition 'encryptedWithKey': Encrypted Attribute Value: AAdUaGUgS2V5Y8mRo94qsZSD8SjqnD4YMFYEkiH9401Dvte73YQxAF0DgvfjyJKHDRiRAE9PAYfhnveYE7Wbi1fEdlIpXyXaYdO3x+f7ZUcPYaSS+pbO<br> DEBUG <span class="error">[net.shibboleth.idp.attribute.resolver.ad.impl.DecryptedAttributeDefinition:97]</span> - Attribute Definition 'encryptedWithKey':: Attempted decryption using DataSealer key provided: VVKQZTOGRWEJYYHJ</p> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td class="email-content-main mobile-expand " style="padding: 0px; border-collapse: collapse; border-left: 1px solid #cccccc; border-right: 1px solid #cccccc; border-top: 0; border-bottom: 0; padding: 0 15px 0 16px; background-color: #ffffff" bgcolor="#ffffff">
<table id="actions-pattern" cellspacing="0" cellpadding="0" border="0" width="100%" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 1px">
<tbody>
<tr>
<td id="actions-pattern-container" valign="middle" style="padding: 0px; border-collapse: collapse; padding: 10px 0 10px 24px; vertical-align: middle; padding-left: 0">
<table align="left" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td class="actions-pattern-action-icon-container" style="padding: 0px; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 0; vertical-align: middle"> <a href="https://issues.shibboleth.net/jira/browse/IDP-1522#add-comment" target="_blank" title="Add Comment" style="color: #3b73af; text-decoration: none"> <img class="actions-pattern-action-icon-image" src="cid:jira-generated-image-static-comment-icon-2d2e9cc8-9e6a-45f3-b40b-5c0af4f764ff" alt="Add Comment" title="Add Comment" height="16" width="16" border="0" style="vertical-align: middle"> </a> </td>
<td class="actions-pattern-action-text-container" style="padding: 0px; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; line-height: 20px; mso-line-height-rule: exactly; mso-text-raise: 4px; padding-left: 5px"> <a href="https://issues.shibboleth.net/jira/browse/IDP-1522#add-comment" target="_blank" title="Add Comment" style="color: #3b73af; text-decoration: none">Add Comment</a> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table> </td>
</tr>
<!-- there needs to be content in the cell for it to render in some clients -->
<tr>
<td class="email-content-rounded-bottom mobile-expand" style="padding: 0px; border-collapse: collapse; color: #ffffff; padding: 0 15px 0 16px; height: 5px; line-height: 5px; background-color: #ffffff; border-top: 0; border-left: 1px solid #cccccc; border-bottom: 1px solid #cccccc; border-right: 1px solid #cccccc; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; mso-line-height-rule: exactly" height="5" bgcolor="#ffffff"> </td>
</tr>
</tbody>
</table> </td>
</tr>
<tr>
<td id="footer-pattern" style="padding: 0px; border-collapse: collapse; padding: 12px 20px">
<table id="footer-pattern-container" cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td id="footer-pattern-text" class="mobile-resize-text" width="100%" style="padding: 0px; border-collapse: collapse; color: #999999; font-size: 12px; line-height: 18px; font-family: Arial, sans-serif; mso-line-height-rule: exactly; mso-text-raise: 2px"> This message was sent by Atlassian Jira <span id="footer-build-information">(v8.5.1#805001-<span title="c5b54a7317f297e17ddad5bb52a1850cf2bdb4bc" data-commit-id="c5b54a7317f297e17ddad5bb52a1850cf2bdb4bc}">sha1:c5b54a7</span>)</span> </td>
<td id="footer-pattern-logo-desktop-container" valign="top" style="padding: 0px; border-collapse: collapse; padding-left: 20px; vertical-align: top">
<table style="border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt">
<tbody>
<tr>
<td id="footer-pattern-logo-desktop-padding" style="padding: 0px; border-collapse: collapse; padding-top: 3px"> <img id="footer-pattern-logo-desktop" src="https://issues.shibboleth.net/jira/images/mail/atlassian-email-logo.png" alt="Atlassian logo" title="Atlassian logo" width="191" height="24" class="image_fix"> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table> </td>
</tr>
</tbody>
</table>
</body>
</html>