My daemon will be responding to network requests so I would prefer it to not run as root for security reasons. I'm not sure what is the best way to proceed:
Is there a way to grant system keychain access for a dedicated daemon user?
Should I split off the keychain access into a "helper daemon" that runs as root?
Something else?
Make a directory dedicated to your service (e.g. /var/<name>) with 0700 permissions
Put a new keychain and text file containing its password in the directory
At launch, your daemon unlocks the keychain using the file, and sets any settings (e.g. disable lock on sleep, etc)
Continue to use ACLs on keychain items so only your daemon process has access