IVM already allows you to set a password for each mailbox. Under the mailbox properties window, select the Delivery tab and enter a pass code (typically 4 digits) for that mailbox.
Then make sure you set the OGM that users call into on 199 is set to 'Access Mailbox Control' and most importantly that the 'Prompt for Mailbox Access' option is selected.
Currently there is no way for the user to change the pass code from their phone, but the Admin can issue random passwords to users and change them if needed without seeing what is set.
Note: Each mailbox must have a unique password. My understanding is it accesses the mailbox based on which pass code was entered. The advantage is users can pick-up their messages from other locations, their messages are always password protected and its convenient to pick the messages up. The disadvantage is if users/admin select the same pass code for 2 mailboxes it could cause conflicts, also since it doesn't prompt for a mailbox and password, it may be easier for people to guess (or accidentally) type in a different pass code and get access to someone else's voice mail.