cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
ToniRantanen
Advocate IV
Advocate IV

Create on-premises Active Directory user with Flow

Hi!

 

What would you suggest as a best workaround to create new user in on-premises Active Directory with Microsoft Flow? I understand that there is no direct connector in Flow to connect to on-premises AD but would for example On-Premises gateway or something like that be a solution for this?

 

Our target is to automate new employee process as much as possible.

 

Best regards,

Toni Rantanen

1 ACCEPTED SOLUTION

Accepted Solutions
v-yamao-msft
Community Support
Community Support

Hi @ToniRantanen,

 

Currently, Microsoft flow doesn’t support On-Premise Active Directly, only On-Premise SharePoint and On-Premise SQL Server are supported.

 

If you need this feature, please submit an idea on the Flow Ideas Forum:

https://powerusers.microsoft.com/t5/Flow-Ideas/idb-p/FlowIdeas 

 

 

Best regards,

Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

17 REPLIES 17
kuingul
New Member

If you need automation for AD user provisioning, I believe you should be looking at 3rd party solutions that specialize in AD automation. Here's a good example of a solution for that: https://www.adaxes.com/active-directory_provisioning.htm

v-yamao-msft
Community Support
Community Support

Hi @ToniRantanen,

 

Currently, Microsoft flow doesn’t support On-Premise Active Directly, only On-Premise SharePoint and On-Premise SQL Server are supported.

 

If you need this feature, please submit an idea on the Flow Ideas Forum:

https://powerusers.microsoft.com/t5/Flow-Ideas/idb-p/FlowIdeas 

 

 

Best regards,

Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Hi @kuingul,

 

Is it possible to trigger Adaxes Active Directory Provisioning with Microsoft Flow? I'm looking for a solution where for example HR would fill new employee's details to Microsoft Forms and then Microsoft Flow would take care rest of the routine tasks related to new employee start.

 

Best regards,

Toni Rantanen

I have created a way to trigger the creation of an AD User with the help of a gateway.

 

I have a list in Sharepoint when HR submits a new user. It takes those values and compiles it into a csv with the necessary fields required in powershell.

 

Once the csv is created I send it to my on-prem server with the gateway to a specific folder. I have a repeating task in task scheduler set to run a .bat which calls a powershell script to monitor the folder indefinitely. That powershell script will monitor that folder for any file ending in ".csv" being created. When it triggers it sets off my CreateUser.ps1 which will import the newly created csv and create the user based on that. Once the script is ran, due to the way I'm importing the csv, it will delete that csv from the folder (I had the flow create the csv in a sharepoint docs folder as backup as well).

 

I hope I explained that well.

Anonymous
Not applicable

Would you mind sending me the script that you used to do that? I've been thinking through this problem today - and I think this might be the best solution tbh. Great idea!

 

Were you able to take unique passwords for the users or were they all the same password for each user created? 

I was able to create a unique password for each user. When creating the csv I used a randomly generated GUID and grabbed the first x number of characters and set that for the password field.

 

The script to monitor is fairly simple:

 

$folder =  # Enter the root path you want to monitor. 
$filter = '*.csv'  # You can enter a wildcard filter here. 

$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{IncludeSubdirectories = $false;NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'}

Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action { 

Invoke-Item 'Folderpath.bat'
}

 

Since I am not logged onto a server 100% of the time I set a task schedule to call a .bat which will open up this script with a persistent window (as it requires an active PS window). That is done with a .bat (ran every 5 minutes through Event Scheduler to ensure it stays up)

 

Powershell.exe -noexit "& "Path.ps1

The "Folderpath.bat" mentioned in the first block of code with "Invoke-Item" is what invokes this 

Powershell.exe -executionpolicy remotesigned -File Path-To-Create-User.ps1

That .ps1 is my create AD user script. You can find plenty of guides on how to customize that to your needs. The important parts (for this method anyway) is that you need it to run right as the .csv is entered and then delete the .csv as it pulls every csv in the folder. I'm sure you could do a foreach but I'm too lazy for that and this works perfectly fine as I have a backup of the csv in a SharePoint drive.

 

Just start the create-user.ps1 like this:

Import-Module ActiveDirectory

$CSVPath = Get-ChildItem C:\Path-To-Folder-With-CSV -Filter *.csv | select -ExpandProperty FullName
$User = Import-Csv -Delimiter "," -Path $CSVPath

And do a 

Remove-Item -Path $CSVPath

To delete the csv that was just created.

 

I hope that is clear enough to follow, I'd be happy to clarify or help further if I can.

Anonymous
Not applicable

Thank you so much!! This is great. 

 

Do you know how you ensure that a csv isn't deleted in the case of 2 simultaneous users created in the SharePoint form? 

 

How do you make sure it only deletes the csv for the user you just created? 

At least in my situation only one user can be submitted at a time so the CSV will only be created for a single user. Since the script runs right when the csv is put into the folder you'd have to have 2 users submitted something at exactly the same second which is highly unlikely. If you can control the situation I would highly recommend only one user per form.

 

For deleting the csv you just created that will be with the $CSVPath variable as that is what it imports from.

Hi,

You should be able to use powershell CSOM scripting using a package like PnP-PowerShell to wathc the sharepoint list and update the list item status once processed and also provide direct feedback if there were any issues.

 

Hope this helps.

Mat

jeckard
Helper I
Helper I

I know this is late but we do this by having Flow kick off a run book from a Sharepoint List and Sharepoint feeds the run book several Parameters for the AD account.

@jeckard how did you do it.

Our Flow does a lot including auto generating an employee ID.  I will share the part that I think will be helpful.

For the Run book script I will have to get that for you from the AD guys they created that part. We run the  Flow on a every four hour time frame to get all items created since the last run and the account column is No

There is  loop that runs for each item and then updates each item to account Yes so they won't create another item the next time it runs. It also update the Request with the output of the Runbook which in our case is the email address. We have the flow sending an email to our HR department with the new EEID and email address to put in the New Hire Information.   The Run Book is a premium connector so the account that runs the flow has a Power Automation plan.  Currently there is no way to do it with out that connector that I know of.

AD1.JPGAD2.JPGRun3JPG.JPG

Anonymous
Not applicable

This is absolutely possible, but you do need to do a little bit of programming - in Powershell is fine.

Create a custom gateway on your target on-premise server. On this server, run a web-server (local to the server is fine - no external access) and this web server will host your AD actions. That's the programming part. I used POSH webserver. Just make sure that instead of returning txt/html you return application/JSON and set the correct response content-type. Return whatever you want (e.g. Get-ADUser x y z | ConvertTo-Json). Build the custom gateway interface in the configuration tool (using Swagger or via the UI).

Then set up your flow to call this custom gateway and set the correct JSON return types. Flow seems finicky about return types. [ my custom gateways all just return 'string' and I put the correct definition in the flow ParseJSON or flow Response action.]

Anyways, then flow is happy and can make calls through the gateway to my on-premise server which is itself making calls to AD.

Finally build a Canvas PowerApp and call the flows to get a user list or to set attributes in AD. The turn-around time on calls is maybe 1 to 2 seconds - not super snappy - but it works! 

I can document further if there is interest.

Anonymous
Not applicable

Hello,

I am new to PowerShell and connecting it with Power automation. I want help in below scenario:

I have a SharePoint List (List name - emp_info) which have following fields -

namemanagerdepartmentdesignation
    

when employee want any update in their profile, they fill a form and their entries will store in emp_info list.

A new entry in emp_info list will be the starting point for MS Flow. Flow will get started and run PowerShell script which contain the code to update properties (manager, department, designation) of that particular user (name) in on - premises Active Directory.

 

Please help me with this and writing PowerShell script. Also share your document and explain what other application is required for this automation. 

Let me know if any other explanation is needed. Thank you.

On-premise resources can be accessed via cloud services. This also includes active directory, the following post might help to create AD account in Onpremise

https://ashiqf.com/2020/05/27/automate-the-provision-of-on-premise-ad-account-part-2/

sscarcella
Kudo Commander
Kudo Commander

You could POSSIBLY trigger a Power Automate Desktop flow using a Power Automate Cloud flow to create an on prem AD account.

Helpful resources

Announcements

Celebrating the May Super User of the Month: Laurens Martens

  @LaurensM  is an exceptional contributor to the Power Platform Community. Super Users like Laurens inspire others through their example, encouragement, and active participation. We are excited to celebrated Laurens as our Super User of the Month for May 2024.   Consistent Engagement:  He consistently engages with the community by answering forum questions, sharing insights, and providing solutions. Laurens dedication helps other users find answers and overcome challenges.   Community Expertise: As a Super User, Laurens plays a crucial role in maintaining a knowledge sharing environment. Always ensuring a positive experience for everyone.   Leadership: He shares valuable insights on community growth, engagement, and future trends. Their contributions help shape the Power Platform Community.   Congratulations, Laurens Martens, for your outstanding work! Keep inspiring others and making a difference in the community!   Keep up the fantastic work!        

Check out the Copilot Studio Cookbook today!

We are excited to announce our new Copilot Cookbook Gallery in the Copilot Studio Community. We can't wait for you to share your expertise and your experience!    Join us for an amazing opportunity where you'll be one of the first to contribute to the Copilot Cookbook—your ultimate guide to mastering Microsoft Copilot. Whether you're seeking inspiration or grappling with a challenge while crafting apps, you probably already know that Copilot Cookbook is your reliable assistant, offering a wealth of tips and tricks at your fingertips--and we want you to add your expertise. What can you "cook" up?   Click this link to get started: https://aka.ms/CS_Copilot_Cookbook_Gallery   Don't miss out on this exclusive opportunity to be one of the first in the Community to share your app creation journey with Copilot. We'll be announcing a Cookbook Challenge very soon and want to make sure you one of the first "cooks" in the kitchen.   Don't miss your moment--start submitting in the Copilot Cookbook Gallery today!     Thank you,  Engagement Team

Announcing Power Apps Copilot Cookbook Gallery

We are excited to share that the all-new Copilot Cookbook Gallery for Power Apps is now available in the Power Apps Community, full of tips and tricks on how to best use Microsoft Copilot as you develop and create in Power Apps. The new Copilot Cookbook is your go-to resource when you need inspiration--or when you're stuck--and aren't sure how to best partner with Copilot while creating apps.   Whether you're looking for the best prompts or just want to know about responsible AI use, visit Copilot Cookbook for regular updates you can rely on--while also serving up some of your greatest tips and tricks for the Community. Check Out the new Copilot Cookbook for Power Apps today: Copilot Cookbook - Power Platform Community.  We can't wait to see what you "cook" up!    

Welcome to the Power Automate Community

You are now a part of a fast-growing vibrant group of peers and industry experts who are here to network, share knowledge, and even have a little fun.   Now that you are a member, you can enjoy the following resources:   Welcome to the Community   News & Announcements: The is your place to get all the latest news around community events and announcements. This is where we share with the community what is going on and how to participate.  Be sure to subscribe to this board and not miss an announcement.   Get Help with Power Automate Forums: If you're looking for support with any part of Power Automate, our forums are the place to go. From General Power Automate forums to Using Connectors, Building Flows and Using Flows.  You will find thousands of technical professionals, and Super Users with years of experience who are ready and eager to answer your questions. You now have the ability to post, reply and give "kudos" on the Power Automate community forums. Make sure you conduct a quick search before creating a new post because your question may have already been asked and answered. Galleries: The galleries are full of content and can assist you with information on creating a flow in our Webinars and Video Gallery, and the ability to share the flows you have created in the Power Automate Cookbook.  Stay connected with the Community Connections & How-To Videos from the Microsoft Community Team. Check out the awesome content being shared there today.   Power Automate Community Blog: Over the years, more than 700 Power Automate Community Blog articles have been written and published by our thriving community. Our community members have learned some excellent tips and have keen insights on the future of process automation. In the Power Automate Community Blog, you can read the latest Power Automate-related posts from our community blog authors around the world. Let us know if you'd like to become an author and contribute your own writing — everything Power Automate-related is welcome.   Community Support: Check out and learn more about Using the Community for tips & tricks. Let us know in the Community Feedback  board if you have any questions or comments about your community experience. Again, we are so excited to welcome you to the Microsoft Power Automate community family. Whether you are brand new to the world of process automation or you are a seasoned Power Automate veteran - our goal is to shape the community to be your 'go to' for support, networking, education, inspiration and encouragement as we enjoy this adventure together.     Power Automate Community Team

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip | How to Report Spam in Our Community

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: How to Report Spam in Our Community We strive to maintain a professional and helpful community, and part of that effort involves keeping our platform free of spam. If you encounter a post that you believe is spam, please follow these steps to report it: Locate the Post: Find the post in question within the community.Kebab Menu: Click on the "Kebab" menu | 3 Dots, on the top right of the post.Report Inappropriate Content: Select "Report Inappropriate Content" from the menu.Submit Report: Fill out any necessary details on the form and submit your report.   Our community team will review the report and take appropriate action to ensure our community remains a valuable resource for everyone.   Thank you for helping us keep the community clean and useful!

Users online (5,095)