Yep, not uncommon. And like I mentioned; AD has plenty of scripting APIs that you can use from inside FM but it does involve OS-level scripting and then creating/triggering that from FM.
From Mac or Windows or both?
What is it you want to read and write from AD?
Either way you'll have to do it from the command line through the ADSL or LDAP interfaces.
You can use a plugin to help execute command line commands / batch files / shell files / vbscript / powershell / ...
Give us some more detail if you can.
We want to modify common atributes; First Name, Last Name, IP Phone, etc.
mmh, OK …
with all my imagination (which is huge, indeed), I can only guess that by First Name, Last Name, etc. you're referring to FileMaker fields within a table.
Which kind of attributes do you wanna modify?
Are you already comfortable scripting this from the command line or any other scripting / programming language?
Because you have two challenges:
- construct the right syntax to push data to AD
- build that syntax based on FM data and have it executed
- (and getting back any results / errors )
So I'm trying to find out which of those you already have covered.
I want to read from and write to AD to integrate with my Asset Management
Database / Support Ticket Database and only have one place to go to update
On Thu, Apr 30, 2015 at 5:50 PM, efficientbizz <firstname.lastname@example.org>
What about MSSQL Express as Middleware?
LDAP can be queried with PHP.
I have built a query page using the PHP LDAP library.
Here is the manual for the PHP LDAP library.
PHP: Using the PHP LDAP calls - Manual
The PHP site has examples that can be used for building the query you need.
Place the LDAP query php page on your FileMaker server with PHP, then call it using by using a the insert from URL script step.
Then you can parse the returned data to populate fields in the current record.
The PHP LDAP library can be used to set data in Active Directory also, but I haven't done this yet.
OS X systems come with openldap. The ldapsearch and ldapmodify command-line tools can handle communicating with your AD server. Some setup is required for binding the client to the server and installing requisite certificates.
Once you can perform your operations at the command line manually, you'll want to prepare AppleScript wrappers for these tools, using "do shell script" to execute the ldapsearch and ldapmodify commands. Then your FileMaker Pro scripts can use "Perform AppleScript" to run the AppleScripts.
On Windows, I gather there are PowerShell modules for interacting with Active Directory. With PowerShell and Remote Administration Toolkit installed, you could probably achieve something similar to the Mac OS approach. I don't spend enough time with PowerShell to offer much more than that.
I'd love to see what you come up with for this, if you're willing to share. I've taken a few stabs at this myself, in pursuit of a FileMaker tool for provisioning multiple services for new users from one interface.
Microsoft already has a nice user interface for managing Active Directory. I would be hard pressed to try to recreate something half baked in FileMaker and that may break with future upgrades of Windows and AD. I'm not much of a Windows fan, but if I want to manage a Windows service, it is hard to beat the Microsoft tools to do that. It may be that due to some contract, etc., that you have to do this. But it certainly would not be my preferred way to go. Is this just something you thought might be a good idea and may be able to reconsider or is it a hard and fast requirement to do it all in FileMaker?
Part of the tools that Microsoft offers is a couple of solid command-line & scripting / programming interfaces to interact with AD, so there is nothing "half-baked" about. It's the essence of allowing integration.
That would work but it adds more spinning parts to the whole setup, and it is not necessary.
Trying to slim down the process of "Onboarding" new employees so as not to have to send information to may different people to get the job done. HR to their database, IT AD/Exchange, etc. There are like 6 different databases to have to enter information into.
Retrieving data ...