<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Coding Bliss</title>
	<atom:link href="http://codingbliss.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://codingbliss.com</link>
	<description></description>
	<lastBuildDate>Fri, 27 Jan 2012 03:42:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Title 21 CFR Part 11: Standard Operating Procedures (SOPs) What are they and why are they important?</title>
		<link>http://codingbliss.com/?p=237</link>
		<comments>http://codingbliss.com/?p=237#comments</comments>
		<pubDate>Thu, 26 Jan 2012 21:09:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=237</guid>
		<description><![CDATA[&#160; Standard Operating Procedures (SOPs) &#8211; An SOP is a written document or instruction detailing all steps and activities of a process or procedure. ISO 9001 essentially requires the documentation of all procedures used in any manufacturing process that could affect the quality of the product.[1] To meet regulations, a company needs rock solid SOPs [...]]]></description>
			<content:encoded><![CDATA[<p>&#160;</p>
<p><font size="3">Standard Operating Procedures (SOPs) &#8211; </font></p>
<blockquote><p>An SOP is a written document or instruction detailing all steps and activities of a process or procedure. <a href="http://en.wikipedia.org/wiki/ISO_9001">ISO 9001</a> essentially requires the documentation of all procedures used in any manufacturing process that could affect the quality of the product.<sup><a href="http://en.wikipedia.org/wiki/#cite_note-0">[1]</a></sup></p>
</blockquote>
<p><font size="3">To meet regulations, a company needs rock solid SOPs that outline the entire process around the creation, validation, and training of software used in the regulated industry like clinical trial software.</font></p>
<p><font size="3"></font></p>
<p><font size="3">How does this work?&#160; Think of this as a legal framework within a company, and you will understand its purposes and intentions.&#160; you cannot just put the words SOP on something and call it good, you need to understand the system as a whole and then you can follow the procedures to allow</font></p>
<p><font size="3"> 1- Transparency</font></p>
<p><font size="3"> 2– Traceability</font></p>
<p><font size="3"> 3 – Accountability</font></p>
<p><font size="3"> 4 – Lower risk</font></p>
<p><font size="3"> 5 – Increased Quality</font></p>
<p><font size="3"> 6 – Meeting regulatory requirements obeying the law and protecting the public.</font></p>
<p><font size="3"></font></p>
<p><font size="3">To start off the whole process where do we begin:</font></p>
<p><font size="3"></font></p>
<p><font size="3">Step 1: The first step is to create a document log, this is also called “document control” which is a log of all the documents in the system, this allows you to track document names, document versions, ownership, status (active, inactive,etc..), training requirements and effective dates.&#160; The document log is your catalog of documents, you can also use software systems to track this but all that is needed is an excel spreadsheet and your good to go.&#160; Download Excel 2010 Document Log Template Here:
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:fb3a1972-4489-4e52-abe7-25a00bb07fdf:05aaa417-9ec1-4ea4-a8a6-0bd4cec35771" class="wlWriterEditableSmartContent">
<p>Document Log <a href="http://www.codingbliss.com/Title-21-CFR-Part-11-Standard-Operating-_2487/document-log.xltx" target="_blank">Document Log</a></p>
</div>
<p>   </font></p>
<p><font size="3"></font></p>
<p><font size="3">Step 2: The second document needed is an organization chart which outlines the roles and hierarchy of a company.&#160; This is important as this is the foundation of who is in authority and what they do, and this also dictates what they are required to be trained on. </font></p>
<p><font size="3">Download Word 2010 Org Chart Template Here: </font>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:fb3a1972-4489-4e52-abe7-25a00bb07fdf:69c6c9a7-d5fe-4122-90e5-11257a8f13ca" class="wlWriterEditableSmartContent">
<p>Example Org Chart <a href="http://www.codingbliss.com/Title-21-CFR-Part-11-Standard-Operating-_2487/10001-01-Jan-2012-Organizational-Chart.vst" target="_blank">Org Chart</a></p>
</div>
<p><font size="3"></font></p>
<p><font size="3">Step 3: The third document you create is a document outlining how you do document management, you cannot have SOP system in place without knowing the genesis of your system, this describes the format, layout, and content of your SOP’s along with processes needed to manage the documents.&#160; It is important to note that SOP’s are like “laws” and as such when they are signed by people who have the roles within an organization to enforce the policies, they become effective, however only after people have been training on the documents and the training is documented as well.</font></p>
<p><font size="3"></font></p>
<p><font size="3">I will dive into more in a later post, for now this is the foundation of compliance for a company.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=237</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Title 21 CFR Part 11: Test Protocols</title>
		<link>http://codingbliss.com/?p=231</link>
		<comments>http://codingbliss.com/?p=231#comments</comments>
		<pubDate>Wed, 25 Jan 2012 20:26:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=231</guid>
		<description><![CDATA[I mentioned in an earlier post about protocols, in this post I will describe in detail what this looks like and how it is modeled to be successful. It is important to note that Standard Operating Procedures (SOPs) are required in order for the system to work as a legal framework and the SOPs will [...]]]></description>
			<content:encoded><![CDATA[<p><font size="3">I mentioned in an earlier post about protocols, in this post I will describe in detail what this looks like and how it is modeled to be successful.</font></p>
<p><font size="3"></font></p>
<p><font size="3">It is important to note that Standard Operating Procedures (SOPs) are required in order for the system to work as a legal framework and the SOPs will dictate the structure, flow, and process around the documents in a system, SOPs are essentially the core principals to any regulated company.</font></p>
<p><font size="3"></font></p>
<p><font size="3">Parts of a Protocol for validation of software</font></p>
<p><font size="3">1 – Approvers</font></p>
<p><font size="3">2 – Environment &amp; Setup</font></p>
<p><font size="3">3 – Defect Tracking </font></p>
<p><font size="3">4 – Test Cases</font></p>
<p><font size="3">5 – Test Results</font></p>
<p><font size="3">Appendix – This could be a test execution worksheet documentation of the evidence that testing took place.</font></p>
<p><font size="3"></font></p>
<p><font size="3">Part 1 – Approvers</font></p>
<blockquote><p><font size="3">This is a list of people and titles and signatures needed to approve the test protocol, once signed it is in effect, however signing this doesn’t complete the testing it just completes the definition of how to test.</font></p>
</blockquote>
<p><em><font size="3">Part 2 – Environment</font></em></p>
<blockquote><p><font size="3">Describes the system environment testing is being completed in.</font></p>
</blockquote>
<p><font size="3">Part 3 – Defect Tracking</font></p>
<blockquote><p><font size="3">This is very important what do you do, if when testing a test fails?&#160; You need to track the whole process to ensure it gets documented, fixed or not and risks justification.</font></p>
</blockquote>
<p><em><font size="3">Part 4 – Test Cases</font></em></p>
<blockquote><p><font size="3">These are step-by-step instructions on the testing, it is good idea to track each test case to a requirement to ensure that you can prove you are meeting the definitions of the function of what the software should do.</font></p>
</blockquote>
<p><em><font size="3"></font></em></p>
<p><font size="3">Part 5 – Test Report</font></p>
<blockquote><p><font size="3">This is the summary of what you will record when testing is complete, how it is recorded and processes around the record keeping.</font></p>
</blockquote>
<p><em><font size="3">Appendix </font></em></p>
<blockquote><p><font size="3">Usually contains templates or worksheets and review sheets as documented evidence of the testing.</font></p>
</blockquote>
<p><font size="3" face="Consolas"><strong>See an example template in MS Word 2010
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:fb3a1972-4489-4e52-abe7-25a00bb07fdf:d99ddb17-3997-40cb-b8f8-d479334f8539" class="wlWriterEditableSmartContent">
<p>Example Test Protocol (word 2010): <a href="http://codingbliss.com/wp-content/uploads/2012/01/Testing-Protocol-Template.dotx" target="_blank">Download here</a></p>
</div>
<p>     </strong></font></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=231</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Title 21 CFR Part 11: Documentation</title>
		<link>http://codingbliss.com/?p=228</link>
		<comments>http://codingbliss.com/?p=228#comments</comments>
		<pubDate>Tue, 24 Jan 2012 20:16:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=228</guid>
		<description><![CDATA[As part of the CFR validation process, what documentation is needed and how does this align with the law? The overall validation process must be linked to your Standard Operating Procedures (SOPs) which are legally binding laws within an organization.&#160; There is a general pattern common to validation systems that are expected in the Part [...]]]></description>
			<content:encoded><![CDATA[<p><font size="3">As part of the CFR validation process, what documentation is needed and how does this align with the law?</font></p>
<p><font size="3"></font></p>
<p><font size="3">The overall validation process must be linked to your Standard Operating Procedures (SOPs) which are legally binding laws within an organization.&#160; There is a general pattern common to validation systems that are expected in the Part 11 industry, these are protocols and reports.&#160; </font></p>
<p><font size="3"></font></p>
<p><font size="3">Protocols: a protocol is a process that you follow, spelled out in great detail and the idea of it is you have a protocol that describes what you want to do.</font></p>
<p><font size="3"></font></p>
<p><font size="3">Report: a report is a write-up about the execution of a protocol and the results of the protocol, protocols and reports go together </font></p>
<p><font size="3"></font></p>
<p><font size="3">A protocol and a report don’t really mean anything in the big picture unless you have SOP’s that dictate the use of protocols and reports and tie the whole process and system together in a type of “legal framework”</font></p>
<p><font size="3"></font></p>
<p><font size="3">What is an example of all of this?</font></p>
<p><font size="3">A Great example is software validation, how would this work with validation of a software system?&#160; You have a validation protocol, and a validation report, the protocol describes how you validate something, and the report is the write up on how the protocol execution went, </font></p>
<p><font size="3"></font></p>
<p><font size="3">So lets say you are testing module A in your new clinical portal, you draft up a validation protocol to test the system outlining everything you need to test, this usually includes screen-shots and signatures to ensure accountability and more evidence and a worksheet used to sign / initial each test is executed and passed or failed.&#160; Once complete, you then write up a report which outlines how it went, pass/fail and next steps, if things didn’t go well you can write a new protocol version or create a new protocol against the fixes needed.&#160; It is important to note that these documents need a process and the process needs to be complete (secure, auditable, etc..) using defect tracking, etc.. to ensure no defects are allowed in the system.</font></p>
<p><font size="3"></font></p>
<p><font size="3">&#160;</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=228</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Title 21 CFR Part 11: FDA Guidance</title>
		<link>http://codingbliss.com/?p=226</link>
		<comments>http://codingbliss.com/?p=226#comments</comments>
		<pubDate>Mon, 23 Jan 2012 05:18:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=226</guid>
		<description><![CDATA[FDA Guidance Documentation: There was a good point brought up in a comment from a reader of this blog around the fact that the FDA had withdrawn guidance documents around Part 11 therefore they do not enforce it.&#160; There is new guidance so it can be deceiving. You can see the withdrawn list here I [...]]]></description>
			<content:encoded><![CDATA[<h5><font size="3">FDA Guidance Documentation:</font></h5>
<p><font size="3">There was a good point brought up in a comment from a reader of this blog around the fact that the FDA had withdrawn guidance documents around Part 11 therefore they do not enforce it.&#160; There is new guidance so it can be deceiving. </font></p>
<p><font size="3"></font></p>
<p><font size="3">You can see the withdrawn list here I am not linking to them since they are withdrawn the less that is known about them the better.: </font></p>
<ul>
<li><font size="2">Guidance for industry, <i>21 CFR Part 11; Electronic Records; Electronic Signatures Validation</i></font></li>
<li><font size="2">Guidance for industry, <i>21 CFR Part 11; Electronic Records; Electronic Signatures, </i><i>Glossary of Terms </i></font></li>
<li><font size="2">Guidance for industry, <i>21 CFR Part 11; Electronic Records; Electronic Signatures, Time Stamps</i></font></li>
<li><font size="2">Guidance for industry, <i>21 CFR Part 11; Electronic Records; Electronic Signatures, </i></font><i><font size="2">Maintenance of Electronic Records </font></i>
<li><font size="2">Compliance Policy Guide, CPG 7153.17: Enforcement Policy: 21 CFR Part 11; Electronic Records; Electronic Signatures</font></li>
<p>     <font size="2">;</font></li>
</ul>
<p><font size="2">There is new guidance which can be downloaded here : <a title="[PDF version]" href="http://www.fda.gov/downloads/RegulatoryInformation/Guidances/ucm125125.pdf">[PDF version]</a> or read here: </font></p>
<p><font size="2"><a title="http://www.fda.gov/regulatoryinformation/guidances/ucm125067.htm" href="http://www.fda.gov/regulatoryinformation/guidances/ucm125067.htm">http://www.fda.gov/regulatoryinformation/guidances/ucm125067.htm</a></font></p>
<p>&#160;</p>
<p><font size="3">This can be confusing but don’t let this fool you, the whole reasoning around the FDA withdrawing the Guidance documents was two-fold.</font></p>
<p><font size="3">1 – The FDA published this guidance which is a copy (with exception of the header) of the IEEE SDLC process around hardware systems testing and validation, unfortunately software and hardware are very different and the FDA withdrew this to aliviate confustion around audits that didn’t look at any specific system with its application to the intent of the Part 11 law.</font></p>
<blockquote><p><font size="3">In other words, auditors are not very good at interpreting law, they took the guidance as law which had a side-effect of causing huge inefficiencies in the auditing and validation of part-11 systems.</font></p>
</blockquote>
<p><font size="3"></font></p>
<p><font size="3">2- Another aspect is if the government gives out advice or guidance it opens itself up for lawsuits, the government should be making laws and enforcing them, not offering guidance on following the laws.</font></p>
<p><font size="3"></font></p>
<p><font size="3">The new guidance is a lot more vague and limited, mostly giving guidance on interpretation of the law and also aligning with any cases that have come to be known.</font></p>
<p><font size="3"></font></p>
<blockquote><p>We are now re-examining part 11, and we anticipate initiating rulemaking to revise provisions of that regulation. To avoid unnecessary resource expenditures to comply with part 11 requirements, we are issuing this guidance to describe how we intend to exercise enforcement discretion with regard to certain part 11 requirements during the re-examination of part 11. As mentioned previously, <font style="background-color: #ffff00">part 11 remains in effect during this re-examination period.</font></p>
</blockquote>
<p><em><font size="3">As you can see part-11 is still in effect, as this would impact public safety and any efficacy of data used in clinical trials among other things. </font></em></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=226</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Title 21 CFR Part 11: Predicate Rules</title>
		<link>http://codingbliss.com/?p=224</link>
		<comments>http://codingbliss.com/?p=224#comments</comments>
		<pubDate>Sun, 22 Jan 2012 05:16:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=224</guid>
		<description><![CDATA[Predicate Rules: What is a predicate rule?&#160; Predicate rules are rules that help you determine if something applies to you or not. In the case of part-11 compliance, a predicate rule is some other law that dictates what needs to be retained, how long it is needed, any other constraints with respect to electronic systems.&#160; [...]]]></description>
			<content:encoded><![CDATA[<h5><font size="3"></font></h5>
<h5><font size="3">Predicate Rules:</font></h5>
<p><font size="3">What is a predicate rule?&#160; Predicate rules are rules that help you determine if something applies to you or not. In the case of part-11 compliance, a predicate rule is some other law that dictates what needs to be retained, how long it is needed, any other constraints with respect to electronic systems.&#160; An example is when you are building a system, you need to ask, is this information regulated?&#160; If the answer is yes.. then part-11 applies, along with some constraints like the e-signatures part only applies to records that needed to be “signed” in paper form, and you are replacing this with an electronic system.</font></p>
<p><font size="3"></font></p>
<p><font size="3">What other laws could apply, how do you know?</font></p>
<p><font size="3">Well in any regulated industry there are the CFR’s (federal regulations) which spell out in detail the specifics, and other acts as well (Food, Drug and&#160; Cosmetic Act, or the Public Health Service Act and any ammendments) in our case of 21 CFR Part 11, we look at the GXPs (Good Clinical Practices, Good Manufacturing Practices)&#160; </font></p>
<p><font size="3">&#160;</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=224</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XACML: What is a Policy and Policy Set?</title>
		<link>http://codingbliss.com/?p=222</link>
		<comments>http://codingbliss.com/?p=222#comments</comments>
		<pubDate>Sun, 22 Jan 2012 01:16:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[XACML]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=222</guid>
		<description><![CDATA[A Policy in XACML is essentially an XML document that describes a couple of things needed to grant permission or access to a resource. It comes down to some basic composition, You have a set of three things, 1 – Subject : This is who is requesting access, the “WHO” 2 – Resource: This is [...]]]></description>
			<content:encoded><![CDATA[<p><font size="3"></font></p>
<p><font size="3">A Policy in XACML is essentially an XML document that describes a couple of things needed to grant permission or access to a resource. It comes down to some basic composition, </font></p>
<p><font size="3">You have a set of three things, </font></p>
<p><font size="3">1 – Subject : This is who is requesting access, the “WHO”</font></p>
<p><font size="3">2 – Resource: This is the “WHAT” and specifically it is something you are protecting for some reason.</font></p>
<p><font size="3">3 – Action: This is the &quot;active verb” that is being performed, usually the activity of what you can do to the resource as in disk-access would be “Read” , “write”, “delete” or could be a function in the system at a higher level “manage” or “review”.</font></p>
<p><font size="3"></font></p>
<p><font size="3">A Policy is linked to these three things which are grouped together as a “target” to make things reusable, and also add shared attributes to the collective.</font></p>
<p><font size="3"></font></p>
<p><font size="3">A Policy also has this thing called “Policy Combining Algorithm” and a “Rule Combining Algorithm” this is the logic to use when more than one policy or rule are in use, the standard default is DENY-OVERRIDES</font></p>
<blockquote><p><font size="3">Deny-Overrides: This is that a deny permission will always override a permit, so that if you have 100 rules applied to you, if only 1 of them is deny, you cannot access, this is a more default-secure method for security.</font></p>
</blockquote>
<p><font size="3">The Rule is straightforward, it defines the logic and attributes needed to check for security on the target, this is the power of XACML as you can apply a rule which is composed of an Effect and optionally a condition, so this means , effect is always “permit” or “deny” and you can apply a condition optionally to grant the effect based on time of day or other attributes for the user.</font></p>
<p><font size="3"></font></p>
<p><font size="3">Policy Set this is just as it says, a collection of policies which allows for better composition.</font></p>
<p>&#160;</p>
<p><font size="3">Lastly there are these things called “Obligations” which help cross-cut a concern like logging or auditing, preventing rule-explosion.&#160; </font></p>
<h2><a href="http://codingbliss.com/wp-content/uploads/2012/01/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://codingbliss.com/wp-content/uploads/2012/01/image_thumb.png" width="601" height="462" /></a></h2>
<p><font size="3">The composition above describes the Scheme of a Policy and Policy set as is required by the XACML standard.&#160; In summary you can see that </font></p>
<p><font size="3">A Policy has </font></p>
<p><font size="3">0 or 1 Targets, </font></p>
<p><font size="3">has 1 policy combining algorithm, </font></p>
<p><font size="3">0 or 1 Obligations, </font></p>
<p><font size="3">1 Rule Combining Algorithm.</font></p>
<p><font size="3">A Target has a Subject, Resource, and Action, and Rule, and a Policy Set and Policy.</font></p>
<p><font size="3">A Rule has an Effect and 0 or 1 Conditions, and a Rule Combining Algorithm.</font></p>
<p><font size="3">A Policy Set has a Target, A Policy Combining Algorithm, and 0 or 1 Obligations.</font></p>
<p><font size="3">An Example Policy is shown below:</font></p>
<p><a href="http://codingbliss.com/wp-content/uploads/2012/01/image1.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://codingbliss.com/wp-content/uploads/2012/01/image_thumb1.png" width="517" height="332" /></a></p>
<p><font size="3"></font></p>
<p><font size="3">Next overview will be around the application of the Policies, and an implementation of a PDP (Policy Decision Point) in C# as an example on how it works internally.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=222</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XACML User Work-Flow</title>
		<link>http://codingbliss.com/?p=215</link>
		<comments>http://codingbliss.com/?p=215#comments</comments>
		<pubDate>Fri, 20 Jan 2012 22:07:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[XACML]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=215</guid>
		<description><![CDATA[With some of the foundational components defined previously, we will examine the big picture of XACML authentication system and then break out more workflows over time to get an application of this security framework . As you can see in the above diagram. Here is a step-by-step breakdown. 1 – You attempt access to a [...]]]></description>
			<content:encoded><![CDATA[<p>With some of the foundational components defined previously, we will examine the big picture of XACML authentication system and then break out more workflows over time to get an application of this security framework</p>
<p>.<a href="http://codingbliss.com/wp-content/uploads/2012/01/xacml-workflow.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="xacml workflow" border="0" alt="xacml workflow" src="http://codingbliss.com/wp-content/uploads/2012/01/xacml-workflow_thumb.png" width="499" height="589" /></a></p>
<p>As you can see in the above diagram. Here is a step-by-step breakdown.</p>
<p>1 – You attempt access to a secure system, you will essentially be calling a PEP (enforcement point) which will check your authentication to ensure you are who you say you are, if you are authentic, it will forward request to PDP.</p>
<p>2- PEP packs this information along with roles and claims to the PDP for a decision to be made about you.</p>
<p>3 – PEP will check cache and return, if not available, it will then try to make a decision, most likely getting information from PIP to make a decision about your authorization access.</p>
<p>4 – PIP will query all identity system usually Active Directory or some Identity system.</p>
<p>5 – PIP will also query any other systems if needed, and send this back to PDP for decision.</p>
<p>6 – PDP caches data from PIP and makes a decision about authorization.</p>
<p>7 – PDP sends decision back to PEP to then allow request or deny.</p>
<p>8 – PEP allows or disallows request based on policies.</p>
<p>&#160;</p>
<p>We will examine the components and possibly implementation solutions to these problems, and why they are very useful for externalizing security decisions from an application.&#160; Another alternate flow is that the PEP controls the data flow as well, rather than just a security check, but would constrain the data based on policies.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=215</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pattern of the week: Specification Pattern</title>
		<link>http://codingbliss.com/?p=209</link>
		<comments>http://codingbliss.com/?p=209#comments</comments>
		<pubDate>Thu, 19 Jan 2012 19:52:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Patterns]]></category>
		<category><![CDATA[Design Pattern]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=209</guid>
		<description><![CDATA[This weeks pattern is the Specification Pattern. We will spend this week reviewing this pattern, how it is used and what its intent is for. For some more in-depth definition you can see here and Here are some useful descriptions, but to appreciate this we will review the intent and possible solutions and applications for [...]]]></description>
			<content:encoded><![CDATA[<p>This weeks pattern is the Specification Pattern. We will spend this week reviewing this pattern, how it is used and what its intent is for. For some more in-depth definition you can see <a href="http://en.wikipedia.org/wiki/Specification_pattern">here</a> and <a href="http://www.martinfowler.com/apsupp/spec.pdf">Here</a> are some useful descriptions, but to appreciate this we will review the intent and possible solutions and applications for this pattern in everyday work.</p>
<p>Here is the intent of the Specification pattern: “ to separate the logic for (e.g.) filtering an entity from the entity itself.”</p>
<p><a href="http://codingbliss.com/wp-content/uploads/2012/01/Specification_UML.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Specification_UML" border="0" alt="Specification_UML" src="http://codingbliss.com/wp-content/uploads/2012/01/Specification_UML_thumb.png" width="563" height="337" /></a></p>
<p>&#160;</p>
<p>Example application for this pattern has been to support filtering as a pluggable entity “collection” of specifications.&#160; The implementation details as things mature are apparent with generics and expression tree’s and event the IQueryable&lt;&gt; interfaces against OR/M layers.</p>
<p>The main benefits of this pattern are</p>
<p><em>1 &#8211; Loose coupling</em> of the filter logic from the objects being filtered, </p>
<p><em>2- Single responsibility</em>: Filtering is essentially a first class citizen and also can exist in a decoupled state for better testing and independent improvement</p>
<p><em>3 &#8211; Composition</em> of specifications allows for reuse and complex nested specifications for easier maintenance. </p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=209</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Title 21 CFR Part 11: E-Signature Compliance</title>
		<link>http://codingbliss.com/?p=194</link>
		<comments>http://codingbliss.com/?p=194#comments</comments>
		<pubDate>Wed, 18 Jan 2012 22:42:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>
		<category><![CDATA[E-Signatures]]></category>
		<category><![CDATA[Part 11]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=194</guid>
		<description><![CDATA[E-Signature implementation details: e-signatures are part of the law required for part 11 compliance here is what the law says itself Subpart C&#8211;Electronic Signatures Sec. 11.100 General requirements. (a) Each electronic signature shall be unique to one individual and shall not be reused by, or reassigned to, anyone else. (b) Before an organization establishes, assigns, [...]]]></description>
			<content:encoded><![CDATA[<h5><font size="3">E-Signature implementation details:</font></h5>
<p>e-signatures are part of the law required for part 11 compliance here is what the law says itself</p>
<blockquote><p><strong><font color="#0000ff">Subpart C&#8211;Electronic Signatures </font></strong></p>
<p><font color="#0000ff">Sec. 11.100 General requirements. </font></p>
<p><font color="#0000ff">(a) Each electronic signature shall be unique to one individual and shall not be reused by, or reassigned to, anyone else.</font></p>
<p><font color="#0000ff">(b) Before an organization establishes, assigns, certifies, or otherwise sanctions an individual`s electronic signature, or any element of such electronic signature, the organization shall verify the identity of the individual.</font></p>
<p><font color="#0000ff">(c) Persons using electronic signatures shall, prior to or at the time of such use, certify to the agency that the electronic signatures in their system, used on or after August 20, 1997, are intended to be the legally binding equivalent of traditional handwritten signatures.</font></p>
<p><font color="#0000ff">(1) The certification shall be submitted in paper form and signed with a traditional handwritten signature, to the Office of Regional Operations, 12420 Parklawn Drive, RM 3007 Rockville, MD 20857.</font></p>
<p><font color="#0000ff">Sec. 11.200 Electronic signature components and controls. </font></p>
<p><font color="#0000ff">(a) Electronic signatures that are not based upon biometrics shall:</font></p>
<p><font color="#0000ff">(1) Employ at least two distinct identification components such as an identification code and password.</font></p>
<p><font color="#0000ff">(i) When an individual executes a series of signings during a single, continuous period of controlled system access, the first signing shall be executed using all electronic signature components; subsequent signings shall be executed using at least one electronic signature component that is only executable by, and designed to be used only by, the individual.</font></p>
<p><font color="#0000ff">(ii) When an individual executes one or more signings not performed during a single, continuous period of controlled system access, each signing shall be executed using all of the electronic signature components.</font></p>
<p><font color="#0000ff">(2) Be used only by their genuine owners; and</font></p>
<p><font color="#0000ff">(3) Be administered and executed to ensure that attempted use of an individual&#8217;s electronic signature by anyone other than its genuine owner requires collaboration of two or more individuals.</font></p>
<p><font color="#0000ff">(b) Electronic signatures based upon biometrics shall be designed to ensure that they cannot be used by anyone other than their genuine owners.</font></p>
</blockquote>
<p>E-Signatures are required when you are replacing a regulated process that is paper-based (required signatures) with electronic signatures. There are 2 parts to this</p>
<p>1 -&#160; As an organization you need to accept e-signatures as physical signatures (or the client running the software)</p>
<p>2- You need to implement the baseline features and have training and signatures of people accepting the signature requirement.</p>
<p>Here are some foundation e-signature requirements for a part 11 compliant system</p>
<p>1 – Unique accounts for each user who signs</p>
<p>2 – Encrypted connection to the system (SSL)</p>
<p>3 – They need to see and agree to the statement of intent to validate this you require some unique data like a username/password, digital identity (biometrics, dongle, rsa token), passphrase, they must provide this with the statement of intent for the signature so they understand they are signing it.</p>
<p>4 – Any user must be able to see all things they have signed in the system (a history of signatures and versions of documents)</p>
<p>5 – Auditing of the entire data stored in an immutable form with full history to prevent falsification (image with checksum etc..)</p>
<p>6- Each signature needs</p>
<blockquote><p>a. the name of person</p>
<p>b. the date/time of signature</p>
<p>c. a storage mechanism to prevent tampering and ensure integrity</p>
<p>d. statement of intent</p>
<p>e. the role of person</p>
</blockquote>
<p><em>7 – The things being signed cannot be pre-loaded with data, the person must fill out the form on their own, no defaults.</em></p>
<p><em>8 – If signing more than 1 thing within a 20 minute window, you can only require password for each signature rather than name/password within the session after 20 minuets they must enter both name and password.</em></p>
<p><em>9 – Signature and Data must be stored together and not be separable. </em></p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=194</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Title 21 CFR Part 11: Security Compliance</title>
		<link>http://codingbliss.com/?p=192</link>
		<comments>http://codingbliss.com/?p=192#comments</comments>
		<pubDate>Tue, 17 Jan 2012 22:40:00 +0000</pubDate>
		<dc:creator>Lucas</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Regulatory]]></category>
		<category><![CDATA[CFR 21]]></category>
		<category><![CDATA[Part 11]]></category>

		<guid isPermaLink="false">http://codingbliss.com/?p=192</guid>
		<description><![CDATA[Security implementation details: security is part of the law required for part 11 compliance here is what the law says itself Sec. 11.300 Controls for identification codes/passwords. Persons who use electronic signatures based upon use of identification codes in combination with passwords shall employ controls to ensure their security and integrity. Such controls shall include: [...]]]></description>
			<content:encoded><![CDATA[<h5><font size="3">Security implementation details:</font></h5>
<p>security is part of the law required for part 11 compliance here is what the law says itself</p>
<blockquote><p><font color="#0000ff">Sec. 11.300 Controls for identification codes/passwords. </font></p>
<p><font color="#0000ff">Persons who use electronic signatures based upon use of identification codes in combination with passwords shall employ controls to ensure their security and integrity. Such controls shall include:</font></p>
<p><font color="#0000ff">(a) Maintaining the uniqueness of each combined identification code and password, such that no two individuals have the same combination of identification code and password.</font></p>
<p><font color="#0000ff">(b) Ensuring that identification code and password issuances are periodically checked, recalled, or revised (e.g., to cover such events as password aging).</font></p>
<p><font color="#0000ff">(c) Following loss management procedures to electronically deauthorize lost, stolen, missing, or otherwise potentially compromised tokens, cards, and other devices that bear or generate identification code or password information, and to issue temporary or permanent replacements using suitable, rigorous controls.</font></p>
<p><font color="#0000ff">(d) Use of transaction safeguards to prevent unauthorized use of passwords and/or identification codes, and to detect and report in an immediate and urgent manner any attempts at their unauthorized use to the system security unit, and, as appropriate, to organizational management.</font></p>
<p><font color="#0000ff">(e) Initial and periodic testing of devices, such as tokens or cards, that bear or generate identification code or password information to ensure that they function properly and have not been altered in an unauthorized manner.</font></p>
</blockquote>
<p>Here are some foundation security requirements for a part 11 compliant system</p>
<p>1 – Unique accounts for each user</p>
<p>2 – Encrypted connection to the system (SSL)</p>
<p>3-&#160; Complex Password required (numbers, symbols, length)</p>
<p>4 – Required to change password every 90 days</p>
<p>5 – Password history no reuse within a year</p>
<p>6 – 3 failed attempts lockout system (send notification to administrator)</p>
<p>7 – synchronize time on all servers</p>
<p>8 – show the username, name, and last logged in date on the screen at all times</p>
<p>9 – after 20 minutes log out account</p>
<p>10 – only allow one login at a time per an account</p>
<p>11 – log all activity in an audit log</p>
<p>12 – display version of software on screen (about screen)</p>
<p>13 – encrypt password is hash so it is irreversible and not viewable by anyone</p>
<p>14 – train people on security to thwart attempts at social engineering</p>
<p>With these feature requirements you can see that a part 11 security system has a pretty high level of requirement, but having the features is not enough you need to validation process and training to complete compliance.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingbliss.com/?feed=rss2&#038;p=192</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

