Wed, Jun
4 New Articles

Building an Architecture for Regulatory Compliance

Compliance / Privacy
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

I find that many of our clients are re-working the structure of their applications because of the increased focus on regulatory compliance as well as more strict requirements from both internal and external auditors. When re-architecting for compliance, several issues must be addressed. Let's take a look.

Determine the Requirements

If you've read any of my articles on compliance, you know that my first piece of advice is for you to determine what laws and regulations your organization must comply with. Espousing an architecture that will supposedly put your applications in compliance is worthless if you make decisions that leave the organization out of compliance. Sources with which you might confer to determine the laws and regulations include the data owners, your Chief Security Officer (CSO), legal counsel, and publications associated with your industry sector. Once you understand the requirements, you can embark on the task of creating your new architecture.

It's All About the Data

The laws and regulations with which you must comply depend on the data that is stored on your systems. For example, if credit card numbers are stored, your organization must comply with the Payment Card Industry (PCI) Data Security Standard. Because it's all about the data, it is vital that your architecture reflect the appropriate classification of data. The appropriate classification provides answers to the questions below. If data is not classified, you are leaving your developers and system administrators to determine the following:

  • Who (what role) has access to the data—How is the programmer supposed to know what roles are allowed to view application data? It is vital that this be defined based on the type of data. For example, the regulations for Heath Insurance Portability and Accountability Act (HIPAA) data state that only users whose job responsibility it is to work with the data be allowed access. Unless the data is properly classified, the design and implementation of the application could easily cause your organization to be out of compliance.
  • How the data is secured—In other words, is the data available to the general user community? Or is it to be defined as "deny by default"? This decision determines the application's default access setting (or, in i5/OS terms, the *PUBLIC authority setting) of the database files. Without making the specification, the *PUBLIC authority of data files defaults to the value of the QCRTAUT (Create authority) system value. This value defaults to *CHANGE, but I have seen some administrators set this system value to *ALL.
  • How long the data is retained—Most likely, industry regulations will drive this requirement. For example, the finance industry requires that data be retained for a minimum of seven years. If your organization's industry sector does not have specific requirements, your organization should determine the retention period based on the needs of the business.
  • What method should be used to dispose of the dataWhile there may be no regulatory or legal requirements for the type of data your organization retains, common sense says that certain types of data need special disposal instructions. For example, your organization may determine that all information classified as company confidential needs to be cross-cut shredded. And I don't mean just printed data; you should define how to properly dispose of all electronic media containing the data.
  • Whether the data needs to be encryptedSome data, such as credit card numbers, must be encrypted while at rest. HIPAA data is required to be encrypted when transmitted outside of the network. Private data, if compromised, may escape the various state breach notification laws if it was encrypted when the breach or loss occurred. This part of the data classification definition should consider whether the data should be encrypted during transmission, when at rest (e.g., stored in a database file), and/or when saved. Make sure to specify the algorithm that should be used as part of the definition.
  • What use of the data is appropriateFor example, the data classification definition may state that the use of private data is strictly limited to those whose job responsibility it is to maintain the data and that all access to private data—even through application interfaces—must be approved by the data owner. This ensures that the data owner has complete control over who (what roles or applications) has access to their data. I've seen examples where a new application is being developed that requires some human resource information. The natural tendency of programmers is to pull the information from the employee master database. But that database has social security numbers, payroll data, and other private information. If this aspect of the data classification is properly defined, the human resource data owner receives the request for the application to be able to access the human resource data, but instead of allowing access to the full database, the data owner will direct the developer to query a different file containing the information or a view of the employee master file that does not contain private data.

Unfortunately, when organizations hear the term "classification of data," they automatically assume that means classifying every field in every file in every application they've written. While that would be a good thing to do, I've never seen an organization complete such a task. Therefore, I suggest a different approach. It is quite possible that adequate controls can be put into place by taking a broad sweep and classifying the file (instead of all fields in the file.) Or perhaps you could take a slightly larger sweep and say that all files in a particular library belong to a particular classification. The broadest statement of all would be to classify all files in a particular application. Whichever you method you choose, some type of data classification is better than no data classification. Leaving the decisions of how data is secured, retained, etc. to your development staff or system administrators is totally inappropriate and virtually ensures that your applications will be out of compliance.

Appropriate Authorization Methods

Because your data specification will state the default *PUBLIC authority settings, you need to describe the application authorization methods that are approved for your organization. For example, if the use of adopted authority is the preferred method of providing applications with sufficient authority to run, that should be stated in the architecture document. Other methods you may want to discuss include the approved method of swapping of profiles, occasions to use authorization lists, and considerations when working with Integrated File System (IFS) objects. And, of course, you want to mention the methods that are not allowed, such as using objects' *PUBLIC authority setting and requiring users to be a member of the group that owns the application.


Another aspect to address in your architecture is that of object ownership. In general, you probably want to discourage (or disallow totally) the use of IBM profiles for owning application objects. In addition, you want to describe when a new profile is required or when another profile created to own application objects may suffice for the new application.


Your architecture must address the logging requirements of your data. For example, if you have HIPAA data, all changes must be logged. In i5/OS terms, this requires that files containing HIPAA data be journaled. Depending on your legal counsel's interpretation of the regulations, you may also have to log every read of the data. Make sure you understand the requirements for each type of data and document the requirements in your architecture. Not only should you describe what actions to log, a description of where the logging must occur may be required. For example, if your organization has implemented or is considering implementing a WebSphere application, an i5/OS database file is the back-end data store, and the WebSphere application performs reads and updates to the file all under the same profile. In this case, the logging must occur in the WebSphere application because the audit logs in i5/OS will not contain sufficient information to be able to uniquely identify who performed the transaction.


While this may be an unfamiliar term to some, the concept of roles is not new. "Green-screen menus" have been providing the concept of roles for years. In a menu environment, users see more or fewer menu options, depending on their role. This concept can be applied to all applications, including WebSphere, client/server, etc. In the architecture, you'll want to ensure that applications implement the concept of roles and that all applications provide a sufficient number of roles so as to provide separation of duties. (This is especially critical when working with financial applications because SOX requires that organizations implement separation of duties, especially working with financial information.) There is a fine balance between providing too many or too few roles, thus making it difficult to maintain and difficult to provide adequate separation of duties. So include in the architecture the guidelines for determining how many roles are required.

It's All About the Architecture

Regulatory compliance within the application development world may be a mystery, but with research and planning, the architecture can guide your programming and system administration staffs, ensuring that your organization's data is in compliance.

Carol Woodbury is co-founder of SkyView Partners, Inc., a firm specializing in security policy compliance and assessment software as well as security services. Carol is the former Chief Security Architect for AS/400 for IBM in Rochester, Minnesota, and has specialized in security architecture, design, and consulting for more than 15 years. Carol speaks around the world on a variety of security topics and is coauthor of the book Experts' Guide to OS/400 and i5/OS Security

Carol Woodbury


Carol Woodbury is IBM i Security SME and Senior Advisor to Kisco Systems, a firm focused on providing IBM i security solutions. Carol has over 30 years’ experience with IBM i security, starting her career as Security Team Leader and Chief Engineering Manager for iSeries Security at IBM in Rochester, MN. Since leaving IBM, she has co-founded two companies: SkyView Partners and DXR Security. Her practical experience and her intimate knowledge of the system combine for a unique viewpoint and experience level that cannot be matched.

Carol is known worldwide as an author and award-winning speaker on security technology, specializing in IBM i security topics. She has written seven books on IBM i security, including her two current books, IBM i Security Administration and Compliance, 3rd Edition and Mastering IBM i Security, A Modern, Step-by-Step Approach. Carol has been named an IBM Champion since 2018 and holds her CISSP and CRISC security certifications.

MC Press books written by Carol Woodbury available now on the MC Press Bookstore.

IBM i Security Administration and Compliance: Third Edition
Don't miss the newest edition by the industry’s #1 IBM i security expert.
List Price $71.95

Now On Sale

Mastering IBM i Security Mastering IBM i Security
Get the must-have guide by the industry’s #1 security authority.
List Price $49.95

Now On Sale



Support MC Press Online

$0.00 Raised:

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: