microsoft / project-rome

Code samples and documentation of Microsoft's Project Rome SDK
https://aka.ms/projectrome
Creative Commons Attribution 4.0 International
448 stars 101 forks source link

Support for Azure AD B2C and XF #55

Open stevehurcombe opened 6 years ago

stevehurcombe commented 6 years ago

Hi, Just want to record this use case here while this is being actively worked on as I think it's important if you want broad adoption.

I'm currently working on a Xamarin forms app targeting the trinity (iOS, Android & UWP).

I'm using Azure as the backend and in particular Azure AD B2C for authentication. I've added Google as an additional authentication provider, though it could be Facebook as well.

I am expecting users to install apps on all of the platforms they are using and I have some interesting use cases to build on top of Rome. However there are some minimum viable features that I expect from Rome:

I expect users to install the UWP version on their work and home PC's (in addition to their mobile or tablet). Therefore one installation will be on a conventional AD domain login and another using a Microsoft Account. My app doesn't care because it uses AD B2C. It is critical that Rome does not rely on a connection to either the AD account or the MSA account. Just the account needed for my app. It would be an unnecessary barrier to adoption if it was required to link all these accounts together,

Update: The more I read about Rome, the more it looks to me that I would need to include a Microsoft login as part of my app eco system because of the reliance on MS Graph. If that's the case then I think that's a show stopper.

Personally I would be very wary of any app that required this - it's more than is required, This is an App first world now, not Windows first. I should add the Microsoft account link when I need to access Windows or Office 365 services, not the other way round.

Secondly, Xamarin Forms is your cross platform toolkit and I expect first class support for it. If that is lacking then it would raise serious doubts in my mind about the project.

Proximity is important (though not a show stopper) - I need to know what device is physically the closest as obviously that's the principal peer to peer connection at any given time. It would be rare (I think) to want to share much to a remote device.

Hope that helps! Real world examples can be useful!

You may well have this on your roadmap already of course.

It all sounds very exciting and I can't wait to give it a shot.

Cheers

Steve

cmknox commented 6 years ago

@stevehurcombe first of all, thank you for taking the time to reach out. This is very much appreciated. You are correct, as of today our platform requires MSA or AAD account. I can tell you that we are actively investigating authentication options for our customers. I can also share that Xamarin is one of the most requested features and development investigations are in progress.

This is very useful, so if you have any other thoughts please let us know!

stevehurcombe commented 6 years ago

Thanks @cmknox , I understand the tension between the Windows\Office365 camp and the Azure PaaS camp. You do need to come up with a toolset that harmonises the two because together they form a very powerful toolset that we developers can leverage.

If you don't you will end up with two incompatible toolsets and a lot of angry support issues on all sides.

Good luck resolving that :)