24
Tue, Dec
1 New Articles

Security Patrol

IBM i (OS/400, i5/OS)
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

Object Level Security

Question: Which is the better procedure to secure objects on the AS/400 in a large enterprise with over 2,000 user profiles? Is it better to use strictly group profiles or a combination of authorization lists and group profiles? My application development teams advocate using authorization lists and group profiles, while my operations people vote for group profiles because they say it doesn’t impact the system performance as much. I’ve always understood that if you set *PUBLIC to *EXCLUDE on authorization lists, system performance isn’t an issue.

Answer: When viewed from a security-management point of view, it is far better to use a combination of group profiles and authorization lists to secure objects on OS/400. For the purpose of demonstration, say you have 2,000 users and 50,000 objects (a reasonable assumption, as OS/400 alone can account for more than 18,000 objects). If you were to implement pure Object Level Authority (OLA) by user profile, you could find yourself having to define one hundred million (2,000 users x 50,000 objects = 100,000,000) different relationships. Clearly, this is not practical.

The benefits of group profiles are fairly well known. If you have 2,000 users on your system, there is a strong chance that most of these users could be grouped into a few functional group profiles based on the users’ job responsibilities. By associating those 2,000 users into functional areas, you may find that there are only 30 or 40 distinct functional job areas that need to be separately managed. Those 30 to 40 functional areas can easily be represented as group profiles on your iSeries. These group profiles then become the basis for describing how users will access your applications.

The benefit that authorization lists provide to regular OS/400 objects (such as files and programs) should be viewed as similar to the benefit that group profiles provide to user profiles. Authorization lists allow you to describe the similarities of objects (from a security perspective) so that they can be regulated from a single point. In a typical application, the security requirements for most programs (your user community needs no more than *USE) and the security requirements for application data (your user community seldom needs more than *CHANGE authority to data) can be represented by two authorization lists. The first list would secure all of the program objects and grant the user community *USE authority to those objects, and the second list would secure the data objects and grant the user community no more than *CHANGE authority to the data. If you had 12 separate



applications on your system and they each required just two authorization lists, it is reasonable to assume that you could define all of the objects on your system by enrolling them in just 24 authorization lists (12 applications x 2 authorization lists per application = 24 authorization lists).

Now, here is the really cool part: If you take the number of user profiles (30) and multiply it by the number of authorization lists (24), you get 720 unique relationships that must be managed. You’ve still got a fair piece of work to do, but it is a lot easier to actually accomplish something when your to-do list is reduced from 100,000,000 items to just 720. This is where authorization lists really show their value.

As for performance, that should be measured not only by the processing time it takes to complete a task but also by the time it takes to manage, implement, and debug that task. From this perspective, authorization lists win hands down.

I have used authorization lists in a number of environments and have not experienced any performance issues. While I don’t doubt that you could configure an authorization list authority scheme so that it would perform poorly (heck, you can make anything perform poorly), a common-sense approach such as the one I have outlined will not introduce any processing-performance problems, and it will greatly increase your implementation and management performance. Just as in application development, you should design your security system for function, then (if necessary) tune it for performance.

*PUBLIC Authority to Folders

Question: Is there a parameter, like the Create Authority (CRTAUT) parameter on the Create Library (CRTLIB) command, or an equivalent function that sets an authorization list and specific object authorities for files created in a QDLS folder?

We upload our point-of-sale files into a subfolder of QDLS on the AS/400. I have set an authorization list on the folder in which these POS files are placed. The authorization list includes certain users with specific object authorities and *USE for *PUBLIC authority. However, when the POS files are placed into the folder, the authorization list is omitted from the file and *PUBLIC authority reverts back to *ALL.

Answer: On the Create Folder (CRTFLR) command, there is an authority parameter called AUT. You can set this parameter to *INFLR in order to regulate new objects placed in the folder. The help text for the AUT parameter states that if the folder being created is a first- level folder, *PUBLIC’s authority will be *EXCLUDE. If the new folder is not a first- level folder, *PUBLIC’s authority is copied from the folder into the first-level folder in which this folder is being created. For example, if you created folder “FRED” in folder QDLS and specified *INFLR on the CRTFLR command, folder FRED would inherit its default authorities from its first-level folder, QDLS. This would indicate that, in your case, *PUBLIC may be picking up its authority from the QDLS folders authority. Check to see if *PUBLIC’s default authority to the QDLS folder is *ALL. It sounds as if that is being propagated.

You may also want to consider moving the application out of the old QDLS file system and using another OS/400 IFS directory. The rest of the OS/400 IFS has good support for default public authority, and it is the file system that IBM is enhancing and extending. There is a good chance that you could easily move to the OS/400 IFS with minimal impact on your applications.

Securing Client Access

Question: This question relates to one that was asked in Security Patrol in the March 1999 issue of MC, titled “Profile with Trivial Password but Cannot Sign On.” The organization I work for has a group user profile that enables connections to the AS/400 from PCs using TCP/IP and is created to prevent sign-on: LMTCPB(*YES)INLPGM (*NONE)



INLMNU(*SIGNOFF). The problem we are having is with some users who have the ability to use the Data Transfer function in Client Access. These users are able to access objects within libraries that they normally would not be authorized to with their regular profile. The libraries do have the *PUBLIC access authority. We would like to restrict this profile from everything except the objects needed to emulate a session to the AS/400. Can this be done? What other security precautions should we be aware of when using this profile to connect to the AS/400?

Answer: You’ve described a classic security problem that affects many iSeries installations. The problem stems from the fact that most AS/400 security “designs” only account for traditional green-screen menu access. The LMTCPB, INLPGM, and INLMNU restrictions control how the AS/400 reacts to a user that signs on to the traditional OS/400 sign-on screen. They have no effect on users who sign on to your system using so many other data access methods, such as FTP, ODBC, or, as you discovered, Client Access file transfer. Furthermore, when *PUBLIC has direct authority to your application objects, any profile (including your “group connection” profile) can exercise the authority that *PUBLIC has.

At this point, you have two main choices, and they are not necessarily exclusive. The first choice is to use group profiles and authorization lists (as noted in “Object Level Security” in this column) to apply Object Level Authority (OLA) to all of the objects on your system, and the second choice is to deploy exit programs that control who can have access to your system from network interfaces such as Client Access. Applying OLA will take the most time and typically requires that you have in-depth knowledge of the application software that you are securing, but it will yield a security model that can easily be extended as your business grows. Deploying exit programs is much faster and gives you the ability to tighten your security this week, as opposed to at the end of a long and involved project. Exit programs also can be implemented to protect application software packages without requiring any modifications to those application software packages.

Sharing Passwords

Question: A site with which I have worked used “functional” user profiles, where the user profiles follow the job, rather than the individual users, so that an individual will use different profiles and passwords to perform different functions. Floating support personnel will use the profiles of the users who usually work in their “job of the day” rather than having their own user profiles authorized to do all the work needed for their job. This necessarily results in sharing profiles and passwords, with all the pitfalls that entails. It will be interesting to see how widespread this practice is, as well as any ideas to reform this practice.

Answer: If users share passwords, you will never be able to trace an action to an individual user. For this reason alone, sharing passwords is never a good idea. Though, on occasion, it may be the lesser of great evils, your situation does not appear to be one of those. You could easily take these “functional” user profiles and turn them into group profiles that all of the users in that job function share. Individual users should have their own profile and password and each profile should be enrolled in the group that represents the job function.



BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

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: