520 likes | 661 Views
Web Content Management with Lotus Domino. Andrew Pollack Northern Collaborative Technologies http://www.thenorth.com. Proud member of The Penumbra Group http://www.penumbragroup.com. What We'll Cover. Choosing Domino for Web content Supporting multiple languages
E N D
Web Content Management with Lotus Domino Andrew Pollack Northern Collaborative Technologies http://www.thenorth.com Proud member of The Penumbra Group http://www.penumbragroup.com
What We'll Cover • Choosing Domino for Web content • Supporting multiple languages • Securing a Domino application • Exploring an actual content management system
Publish or Perish • Check back weekly for new content! • Last updated July 3, 1998 • Content draws users, graphics don't • Well, at least not business graphics • Web designers know code, not content
How is a Web Page Like a Wedding Invitation? • You want just a few lines of simple content • You pay an expert to produce it • It takes two weeks to see the result • The expert never gets it right the first time • Can I have that in Kanji?
Power to The People • The content owner is the best author • Its their audience • Its their interest area • Its usually their language • Its their budget • If you give them control of the page • It will be what they want • You can focus on other things
Summary: Top 5 Reasons To Let Content Owners Publish • They need it today • Budget? What budget? • "Just a little more to the left..." • Don't have any web developers who speak Cantonese • Otherwise, you have to do it yourself
Where Domino Fits • Front ends and back ends and middleware, Oh my! • Domino, WebSphere, and DB2 -- who does what? • What scale really means
Front ends • Interaction with the user • Great for holding information • Not so good for storing data • Lotus Domino, Apache
Back ends • Great for holding lots of data • Not so good for storing information • IBM DB2, Oracle, SQL Server • Lotus Domino
Middleware • Ties the front end to the back end • Contains business and security logic • Puts the Bop, in the Bop-Shu-bop • adds dynamic data • Servlets, JSP's • Lotus Domino forms and agents
Design: Framesets, Pages, Navigators, Outlines ... so much more! Middleware: LotuScript, Java, Javascript, @Formulas, Agents, Events Data Storage: Domino Databases The 100% Domino Model Big Happy Domino Server
Design = Domino: Framesets, Pages, Navigators, Outlines..... Middleware = WebSphere : Servlets & JSP Data Storage = DB2 Domino, WebSphere, & DB2 - The J2EE Model
Domino is design • From concept to creation -- rapid development • It's a flexible container -- a great place for your stuff • Authentication and authorization are built in
DB2 is transactional data • Price lists • Parts inventory • Financial data • Multi-phase commit
WebSphere is Middleware • Connects Domino's design to DB2's data • Thousands of transactions per second
What Scale Really Means - Data • How Much Data • If you're talking about millions of records its Data. Put it in a relational database. • Yes, I know you CAN put millions of documents into a Domino database, but think about the data first • Is it content or transactions?
What Scale Really Means - Users • How Many Users? • Web users are like snowflakes • One isn't a problem, it's when they gang up • They're really cold -- when they get angry
Is it content or transactions? • Content is "easy" to serve • Transactions are harder • Where is the data?
Summary: Where Domino Fits • Domino is Design • Can also be middleware and/or data storage • WebSphere is middleware • Great for high volume and transactions • DB2 is data storage -- and lots of it • If you're talking about millions of anything, its probably data
Domino WANTS to be multilingual • Just turn it on and let it go! • Tools like Global Workbench • Automatic content translation tools • My favorite settings • Those that make my customers happy
Domino is multilingual inside! • ASCII? One byte per character? • How 80's of you! That went out with big hair and alligator shirts • Speaking Chinese runs in families • Language properties are part of the text -- they come from the author • So why do you have to do anything? • Many languages have several different versions and character sets
Design Tools like Global Workbench • These tools are GREAT for design elements • Can be hard to retrofit • Best if used when creating new applications • These tools are not helpful for content translation
Automatic Content Translation Tools • The holy grail of content management • Not quite there, but getting better • Provide users "the gist" of the page • Can be useful, but a high cost for imperfect translation • Users are still better
Lesson My Favorite Language Settings These are the settings chosen by the content owners at my largest customer...
Securing a Domino Application • This is a REALLY BIG topic • How secure do you need it? • First, protect the operating system • Authentication vs. authorization • Security vs. obscurity • Data security vs. transmission security
How secure do you need it? • What kind of data is being served? • Personal information • Medical or financial information • Business planning data • Competitive information • Are there legal requirements? • Many kinds of credit, medical, and personal data have specific legal security requirements
First, Protect the Operating System • The OS is the door to everything • Get in that door, and the data is open • Anything that listens is vulnerable • File sharing, printer sharing, universal plug 'n access • A quality firewall closes the doors • Doesn't let anything talk to what's listening • Keep up to date on patches • Keep up to date on warnings • HTTP://WWW.CERT.ORG
Authentication tells us who you are • Name and password = secret handshake • Be careful of who's watching! • Trusted certificates = a photo ID • Difficult to forge, but frustrating to some users • Bio authentication = well, Bio authentication • Your thumb should not have value if detached from your hand.
Authorization tells us what you can do • Access control groups • ACL entries -- including roles • Reader and author field data types
Security is protected data, even if you know where it is • Read access fields • $ViewTemplateDefault • File and directory controls • Database ACLs
Obscurity is hidden data • Non-linked pages • Hidden views • Document indexes • Many skilled users DO know how to get this data • Even less skilled users will try url hacking to see what's there
Transmission security -- stopping the man in the middle • Make sure the person you're talking to is the only one you're talking to • Sniffers can read the packets • SSL encrypts the connection • Basic authentication without SSL is wide open to the man in the middle
Summary: Securing A Domino Application • First, secure the operating system • Build the application carefully • Obscurity is not security • Use the access control tools • Don't forget the 'man in the middle‘
A Real Content Management System • Automatic layout makes your colors brighter and your whites whiter! • Any simple text can look great with the right layout design around it! • Never let them see you sweat • Don't show users links to pages they don't have access rights to view!
Store the layout as a header & footer subform and display it on the web
Index pages provide quick, organized access to content Avoid showing secure links to users without authorization to use them Automating Index Pages
Link definitions fill in the lookup view Reader Names fields keep the link from from the view, preventing display for users who cannot access the content
Notes view lookup returns a result The view column formula.... Creates html output for each document.... Which gets included right onto the form
Easy to use -- just like mail Supports the content owner's language Flexible and powerful for advanced users Store HTML and Javascript natively Don't forget tools like Midas to create and manage rich text programatically Rich Text Rocks for Content Owners
An Actual Content Management System Screenshots are Taken from live sites
Editor Approval Cycles -- That's Old Hat • This is basic workflow • Lotus Notes has OWNED this space since it invented the stuff more than 10 years ago • To implement workflow in new sites, check out Lotus Workflow 3.x