We are using OpenLDAP 2.3 to store contacts.
We have built a java project using Spring LDAP to do weekly export of the contacts. In the export file we flag if a contact is newly added or if an existing contact is modified. This works fine. The issue is when a contact is deleted in LDAP. When a contact is deleted, the whole record is removed in LDAP.
Is there a way in LDAP to keep a track of deleted records?
Openldap has an audit module you can add in. You would have to query that to see what was deleted in the last period. Another option outside of ldap is to keep a list of contacts of exported from the previous run and compare the two at the end.
Related
I build an event registration app which add all the participants in the a real time database.
The Database:
To secure my app I have used the security rules which only allow pushing data to the "participants",
I use JSON in order to create the register process.
I want to return some feedback to the client if she/he enter an email that has already been registered.
Can I do it without open a reading option on the "participants"?
For history, I just recently wrote this question:
This has led to a follow up question. In the User Profile, "Roles" Tab (which I'm assuming is a table somewhere), is there a table I can report on that will get me what was changed and possibly by which user account (and maybe even the IP address of the user account)?
The path is:
Main Menu->PeopleTools->Security->User Profiles (and then the 'Roles' Tab).
Ultimately I need to figure out what change was made (when a role name was added) and by what user account and as of what date/time. If possible I need to link it to the IP address (which I think is found here: PSACCESSLOG).
what you need is audit on the PSROLEUSER table: you need to build an audit table for it and fill it either by a database trigger or through a PeopleSoft development: adding record audit to the PSROLEUSER table.
The PSROLEUSER table stores the roles a user is assigned. By default there is no history. To get that you would need to enable auditing, either record auditing through App Designer or setting up database trigger auditing. The database trigger audits can actually capture changes made either online or through the database so could be considered more complete, but can take some effort to get working properly. However, the database triggers also allow capturing some additional user information at the time of the transaction.
See http://peoplesoft.wikidot.com/auditing-user-profiles, particularly the section on using the the GET_PS_OPRID functions for Oracle or the SQL Server equivalent. Capturing the OSUSER and IP here would more reliable than trying to tie back to PSACCESSLOG.
I'm setting up SQL access in a newly created OpenEdge 11.5 database.
In checking the contents of the sysdbauth table using "select * from sysprogress.sysdbauth", I see that there are two users setup by default: sysprogress and a user with the name of the Linux user account that was used to create the database.
I'm looking for recommendations as to how to handle these two accounts. Obviously I want to have an account to use for DBA tasks. Should I use one of these accounts for the purpose? If so, what should I do with the other account?
Is it possible (and safe) to be deleting either of these predefined accounts?
On page 175 of the Database Administration guide you can read about default users and why they are created:
Tables used from SQL only
An SQL database administrator (DBA) is a person assigned a sysdbauth record in the database.
SQL DBAs have access to all meta data and data in the database. To support internal schema
caching, every OpenEdge database begins with a DBA defined as "sysprogress." However,
OpenEdge restricts the use of "sysprogress."
When you create an OpenEdge database using the PROCOPY or PRODB commands, and the
database does not have any _User records defined (from the source database, for example), then
a DBA is automatically designated with the login ID of the person who creates the database. This
person can log into the database and use the GRANT statement to designate additional SQL DBAs,
and use the CREATE USER and DROP USER statements to add and delete user IDs.When creating
users, this DBA can also specify users as SQL-only users, who can only access the database
through SQL.
There are several knowledge base entries around the task of deleting or disabling the default users.
http://knowledgebase.progress.com/articles/Article/P5094
http://knowledgebase.progress.com/articles/Article/P161411
This suggests that it's really safe to delete or disable these accounts but you should:
1) Create replacing accounts first.
2) As always: test in a separate environment first and not in production!
Yes, in fact Progress kind of expects you to do so. Create a root account and get rid of both. It's fine.
I have a SF2 application using multiple database connections. There is a database for each user account, so their number isn't static.
I use a DBAL connection factory to access a database depending on which user is logged in.
I need to integrate a search engine bundle that can work well with this type on configuration.
It should be able to :
generate search indexes per database
manage indexes for databases that have identical structures (same table and column names)
do search requests only in the database related to the logged user.
I know it's a custom configuration and not very popular but I hope somebody can help me find maybe the start of a solution, here. Thanks.
I have already checked Elastica and Solr bundles, but I don't know how to configure them without modifying the code.
I'm using Social Connect Module in Sitecore and using its Login functionality to get user info. The documentation states that the info is stored in the Core DB in aspnet_Profile table. "By default, the module saves the information from the social network in the fields with the corresponding prefixes. For example, fb is a prefix for Facebook fields." - this is the line in the doc.
However, i cant find such fields in the DB. Or should i be looking somewhere else?
I just want to see what info i'm receiving when the user logs in and would like to have access to it. Thanks in advance
When you say database, are you then checking the database using the Sitecore Shell and then switching to Core database or are you actually looking at the ASP.NET Membershipprovider tables in the database using SQL Management Studio?
You should be able to see the records in the table aspnet_Profile. The properties are stored kind of weird and is concatenated in the PropertyValuesStrings column.
You can also use the API to try and retrieve the values as described here: http://learnsitecore.cmsuniverse.net/Developers/Articles/2009/11/Custom%20user%20profile%20properties.aspx
More or less you have to call userProfile.GetCustomProperty(“fb[some property]”);
You could also take a look at the this blog: Social Connected with Sitecore (Facebook) 2: Access facebook information
This also gives you a sample of looping through all facebook properties from Core.