Question: I am writing an app that requires multiple levels of users, where one user is an administrator and adds slave users.

I can't really seem to find a way to allow access to the slave users safely. Emailing a password is unsafe as emails are unencrypted, and I might as well just send the password if I'm sending a one-time link. 

I can reduce the window exponentially by making a temporary password required to be changed on first login, emailing a one-time use link, setting a timeout on either of these, or any combination of all of these...

But the window still seems extremely large compared to asynchronous encryption, for example.

I could require an SSH communication or something, but obviously this is not even close to pragmatic. 

What is the industry standard, and what solution, if any, can provide both a pragmatic user-friendly experience, as well as a secure channel?

Answer: 
Assuming you are talking about personal accounts not company accounts here. It's part of your identity and you should protect it as much as possible, risk is greater if they can find your address (fairly easy - online address finders, whois records if you own the website) or your date of birth. 

There was a case a few years ago where a UK celebrity claimed nothing could be done with their acct no / sort code and published them in the press - a stranger used their details to set up a direct debit to a charity. [link to source (BBC)](http://news.bbc.co.uk/1/hi/entertainment/7174760.stm) 

Although you might have a number of trusted customers - your details will be available to anyone who can get to your site and some of those may be malicious. If you are in the UK, the direct debit guarantee may cover you if any one set up anything like that but your bank may consider it reckless to post your details in public. I certainly would be very uncomfortable doing so and would consider a payment gateway instead.
I think I could pay my car payment with just that information.

You could use PayPal for this kind of venture.