Categories
Windows 365

Cloud PCs and the Impossible travel

Once upon a time, in a data center far far away….

Here is something I learned the hard way in my own tenant. Windows 365 kind of messes with your account security if you are consuming Microsoft 365 services from another device than your cloud PC. Especially if you live in a country like Sweden where the Windows 365 service is yet not available in Sweden Central. Further more, it seams to only affect you the first few times you sign in, before the algorithms learn your behavior.

What happened to me was that Identity Protection and user risk blocked me out from my Cloud PC, since I had defined it to block if user risk was too high and not password change.

It took me a while to just realize what had happened, and how to get around it (since Identity Protection is not an area I’m to familiar with).

Why is that?

Well, there is something called “Impossible travel” or atypical travel which is used to assess the risk of your account being compromised, which means that it’s very unlikely that you would travel from let’s say Stockholm to Amsterdam within a few seconds. This is a very good thing to have in place since it will increase the security of your accounts a lot!

This feature is a part of the Identity Protection part of the Azure AD (which requires a Azure AD P2 license), and can help you identify and take action on risky sign-ins performed by users, or detect if their credentials has been stolen.

There are two key parts of this, Sign-in risk and User risk, and you can control what happens if a user does not live up to the expected level. And of course, Multifactor Authentication (MFA), plays a key role.

Conclusion

I’m not going to dig deep into this at all, just sharing an observation basically. If you want to read more about Identity Protection, I really recommend you having a look at the Microsoft Learn documentation, it provides a good overview.

Like I stated in the beginning of my post, this was something I noticed in my lab, but I’ve not seen it in the wild so far in any production environment. For my environment, I solved it by dismissing the risk for my user which eventually allowed me to sign in.

I’ve spent a good amount of time trying to reproduce this sign-in block, but I haven’t been able to yet.

Have you seen something like this with Cloud PCs?

Categories
Intune Windows 365

Get started with Microsoft Dev Box

Some of you might have seen something called Microsoft Dev Box flash by in your feeds. Something called Dev Box doesn’t really sound like something device-related, it sounds more like something your developers would care about. They probably will, but there is a big reason you should care too.

Microsoft Dev Box is a new tool in the toolbox for you, this time to provide Cloud PCs to your developers or such. There are many similarities between Dev Box and Windows 365, but also Azure Virtual Desktop (AVD). However, your developers can themself deploy computers to your tenant based on a template that you create, which means that a developer could create a new test PC when they need one without really involving you as an admin.

Microsoft Dev Box is not licensed-based like your Windows 365 Cloud PC, instead, it’s consumption-based like an AVD. But you have the simplicity of setting up new computers from Windows 365, so it’s almost like a mix of the two. However, the user target group is different since you can get more powerful machines that are deployed by the user themself.

You can read more about the Microsoft Dev Box here, and what Microsoft calls a “Dev Workstation in the cloud”.

Getting started with Microsoft Dev Box

To get started with Microsoft Dev Box you need the following:

  • An Azure subscription
  • Azure AD
  • Intune tenant
  • Windows licenses (typically as part of your EMS or M365 license)

Setting up the Microsoft Dev box is completely taken care of in the Azure portal, not the Microsoft Endpoint Manager admin center.

To start off, you need to head over to portal.azure.com and make sure you have an active Azure subscription to provision this. Then, search for Microsoft Dev Box.

This is where your different environments will be hosted. You can have multiple Dev Boxes set up for different parts of the organization. In each Dev Box, you can also create different projects. In the real world, you would probably configure this in a landing zone specifically set up for your dev-users who will work on certain projects.

The first step is to create a new Dev-center by pressing “+ Create” in the Microsoft Dev Box pane. Select what subscription and resource group you want to deploy this too and give your Dev-center a name. You will also need to select an Azure region where your machines will be hosted. Since this is a preview, the selection of what Azure data center regions are available is limited. Once you have selected this, press “Review + Create” and create your Dev-center.

Once the Dev-center has successfully deployed, you need to create a Network Connection where you define if your Dev Box PCs should be hybrid-joined or Azure AD joined. Head back to the Microsoft Dev Box pane and select Network Connections (or search Azure for Network Connections).

Select “+ Create” to create a new Network Connection by selecting what subscription and resource group to use. Also, give the network connection a name and select what Azure Vnet you would like to use (if you haven’t created a Vnet already, you will need to do that first). Press “Review + Create” and create your Network Connection.

In this example I’m using Azure AD joined devices as selected as “Domain join type”. If you want to use Hybrid join instead, you will need to add some additional information about your domain.

Once you have created your Network Connection, you will need to create a project. This is where gather each project you would like to use the Dev Box PCs in and define what machines are available by creating Dev Box pools. In the Microsoft Dev Box pane, select Projects.

To create a new Project, click “+ Create” and select what subscription and resource group you want to use. Select which Dev-center you would to use and give your project a name. Press “Review + Create” and create your Project.

Now we need to define what machines are available for our users by creating a Dev box pool. There are a few different “sizes” available, and you can read more about them on Microsoft site about Microsoft Dev Box, where you can find out the pricing for each.

To create a new Dev box definition, navigate to the project you created earlier and select Dev box definition on the bottom of the left-hand menu.

To create a new Dev box definition, select “+ Create“. Give your definition a name and then select a Windows image to use, in this example we will use a Microsoft-provided image, but you could upload your own if you would like. Make the appropriate selections of what size you would like on the machine and click “Create”.

The next step is to create a Dev box pool in your project, do this by navigating to your project you created earlier and selecting Dev box pool.

Create a new Dev box pool by pressing “+ Create” and giving your new pool a name. Select the Dev box definition created earlier and also the network connection. You will also need to confirm that your organization has Azure Hybrid Benefit, you can read more about what that means here.

Once you have filled out this, create the dev box pool by clicking “Create” at the bottom of the page.

The last thing we need to do is to assign users the rights to consume machines and work in our project. Prior to this, it’s a good idea to create an Azure AD group that will contain our users.

To configure the access to our project we will head into “Access control (IAM)” in our project.

To add a new assignment, click “+Add” and select “Add role assignment”. In the list of roles, find and select the “DevCenter Dev Box User” role and press next.

On the next page, add your Azure AD group which contains the users who should have access to the project. Once you have added this group to “Members” press “Review + assign” to finalize your role assignment.

You can verify that the assignment was successful by looking in the list for the role and validating that your group is listed.

And that’s it! You have now successfully prepared your environment to use Microsoft Dev Box!

User experience

For users to create new Microsoft Dev Box machines, they will need to access devbox.microsoft.com and sign in with their user account.

Once signed in, the experience is similar to the Windows 365 end-user portal, but there is a new button called “+New Dev box” where users can deploy machines themself.

Once you click that button, a fly-out will appear where you can see the specification on the machine you are allowed to deploy (based on the definition we made earlier) and you are asked to give your machine a name. Once you have given the machine a name, which will be the name displayed to you for your convenience (MEM will show a CPC-xxxxx name), press “Create“.

The creation of a machine will take somewhere around 30-90 minutes. Once the machine is done, it will show in the portal where you are right now but also in the Remote Desktop app where you have all your other Windows 365 machines. A bonus fact is that it will also appear in the Windows 365 portal, marked as Dev box, but you cannot create new machines from there.

Once the machine has been created, you can connect to it and start using it!

Categories
Intune Windows 365

Disabling ESP on Cloud PC

One thing you will notice if you are deploying Cloud PCs is that the Enrollment Status Page (ESP) from Windows Autopilot will or might appear when a machine is being set up. I’ve seen numerous instances where the ESP has failed causing the Cloud PC to lock out the user at the initial start. This is usually fixed by reprovisioning, but an unnecessary call to the service desk can cause frustration with your users and your administrators.

The ESP is not an important part of the Windows 365 provisioning in most cases, hence it can be disabled by a custom policy.

Create the policy

To create a custom configuration policy, go to the Microsoft Endpoint Manager admin center (endpoint.microsoft.com) and navigate to Devices > Windows > Configurations Profiles.

Select to create a new profile and select Custom as template.

Give your profile a name based on your naming convention and press Next.

Add a new OMA-URI setting by pressing Add.

OMA-URI: /Vendor/MSFT/DMClient/Provider/MS DM Server/FirstSyncStatus/SkipUserStatusPage

Data type: Boolean

Value: True

Save your setting and press Next.

Select to target All devices, but filtered to only target Windows 365 devices. You can read more about how to do that in this blog post about filters.

Finish the wizard by clicking Next until you reach the last step, then click Create.

You have now successfully created a configuration profile that will skip the ESP for all your Cloud PCs.

Summary

The ESP is something that in Windows Autopilot is very useful, but for Windows 365 it’s not crucial. This will also reduce the risk of random errors during provisioning.

Applications that are needed before the user starts working can be assigned using the assignments to “All Devices” and filter out your Cloud PCs since this will evaluate a lot faster than Azure AD groups.

Categories
Windows 365

Different ways of accessing a Cloud PC

There are a few ways you can access your Cloud PC. You probably have your favorite way to access your Cloud PC, but I though I would go through them all and the benefits with each.

Microsoft has also announced an upcoming Windows 11 feature called Windows 365 Switch which will be a native Windows 365 app in Windows 11. I will not cover that in this post since it’s yet to be released at the time of this blogpost.

Browser

Connecting to your Cloud PC through the browser is in my humble opinion the coolest way, and really convenient since you can then access your computer from what ever device you are using without any issues (as long as the browser is a modern browser like Edge, Chrome, Safari, or Firefox). Okay, not any device, but Windows-, macOS-, ChromeOS-, or Linux-based device.

You access the Windows 365 service through https://windows365.microsoft.com and sign in with your account.

In this portal, you will see all Cloud PCs assigned to you.

To connect to the Cloud PC, you simply press “Open in browser” and the Cloud PC will open in a new tab.

You can also perform some remote tasks on the Cloud PC such as restart, restore, rename or troubleshoot. Or see System information.

The restart is exactly what it sounds like, you will remotely restart your Cloud PC. Restore can be used to go back to a previous point in time (I cover that in this blogpost).

Rename option will allow you to give your Cloud PC a new friendly name instead of the generated name.

If you as an end-user are experiencing issues with connecting to your Cloud PC, you can use Troubleshoot to see what’s causing the issues. It will check that the service is healthy and that there aren’t any connectivity issues.

If you click the “System information”, you will see some details about your Cloud PC such as device name and license.

Remote Desktop app

Working with your Cloud PC everyday, I would say that this is the best option to connect.

Simply download the Remote Desktop app from Microsoft for your desired operating system. For Windows I would suggest to use the desktop version and not the Microsoft Store version, the desktop version works a little bit smoother in my experience.

One thing that is good to keep in mind is that if you are using macOS, you cannot currently have multiple accounts in the Remote Desktop app.

When you have downloaded and installed the application and start it for the first time, you will be asked to sign in. Sign in with you account and the resources you have assigned to you will be added. These could be Windows 365 resources, but also Azure Virtual Desktop resources and published apps.

As you can see by the picture, running the app in Windows I can have multiple accounts and resources in the same place, giving me easy access to several environment.

To launch the Cloud PC, I simply dubble click on the computer icon, provide my credentials and I’m signed in.

I can choose to run this in a full screen experience or a windowed experience depending on my personal preferences.

Using the Remote Desktop app, you don’t get all the remote features as you do in the web-portal, but you have easier access to your Cloud PC on a daily basis.

Mobile app

Lastly, mobile app. There is a Remote Desktop app available for iPhone/iPad and Android devices which can be used to connect to your Cloud PC. I will show some screen shots from and iPhone which is maybe not the smoothest way to work with the Cloud PC due to the screen size. For this, and iPad would be a much better option.

To connect, click the + sign at the top right corner and select “Add workspace“. You will need to enter the subscription URL found here and then sign in with your account. One thing to keep in mind with the mobile app is that you can only have one account associated with the workspace, so no support for multiple accounts.

Once you have signed in, you will see all resources which are assigned to this account.

To connect, simply tap on the computer you which to connect to and enter your credentials when asked to and you will be connected to your Cloud PC.

You can now use your Cloud PC from your mobile device, and keep working where you left your desktop! This is a great option when you have to check something on the go, to simply just connect to your Cloud PC.

Feature vice, the mobile app is pretty limited but you can easily connect to your desktop. If you have a larger screen, the experience will be better so an iPad or Android tablet with a keyboard would be ideal even though it works surprisingly well using an iPhone as you can zoom in and out if needed.

Categories
Windows 365

Restore a Cloud PC

One pretty neat feature with virtual clients is that you can have restore-points. If you have ever used Hyper-V, you have probably used or seen the checkpoints which you could use to go back to a previous state. This kind of feature is available in other virtualization platforms as well, but Hyper-V is the one I’m familiar with. Citrix, being an old player in the VDI game, also offers this feature.

The restore point option is now also available for Windows 365 and your Cloud PC. Meaning that if you mess something up or manage to delete something really important you had stored locally, you can roll your device back to a previous state. Please be aware that this is stilla preview feature, so the final feature might not be the exact same things as shown in this post.

You can restore either as an admin, or have your end-user do the action. To allow your end-users to do this, you need to configure this setting.

If you enable this for your users, they can restore on a much tighter intervall than you can as an admin. You as an admin have 12 hour restore points, but you can configure for your end-users to be able to configure to have restore points every 4 hours.

Of course, if a backup is restored from a restore point, any data stored on the Cloud PC between the current time and restore point time will be lost.

Setting up user initiated restore

To configure the restore point service, navigate to Devices > Windows 365 and select the User Settings tab.

Press “+ Add” and give your profile a name.

In the “Point in time restore service” part of the profile, check the check-box for “Allow user to initiate restore service” and then select the frequency for your restore points.

Hit Next and assign your profile to a group of users, I’m assigning it to the group I’m using for my provisioning profile.

Press next to review your settings and than create the profile.

The user restore point service will only be available to users included in the group you have assigned the profile to.

Restoring as an admin

As an admin, you can restore Cloud PCs on a 12 hour interval. You can restore the Cloud PC by going to Devices > Windows > Windows devices and find your Cloud PC.

Once looking at the device, you can choose “Restore (preview)” from the ribbon and it will show you all available store points.

Once you click “Select” and confirm that you want to restore, the restore is initiated. If you look under Devices > Windows 365 and the All Cloud PCs tab, you will see that restore is in progress.

Restoring as an end-user

To restore my Cloud PC as an end-user, I need to brows to the Windows 365 portal, windows365.microsoft.com and sign in.

Once signed in, I will see my assigned Cloud PCs.

To initiate a restore, I simply click the gear icon on the Cloud PC I want to restore and select “Restore (preview)“.

Once I click that, I get this screen telling me as an end-user what will happen and I need to confirm that I really want to restore and then select which point.

Once I’ve clicked restore the Cloud PC will get a banner saying “Restoring Cloud PC” and which indicates that the process has started. I will see the same thing if a administrator has initiated a restore for me as well.

Once the restore has completed, my Cloud PC is ready to use again and will contain the same data as it did at the point in time of the restore point I selected.

Categories
Windows 365

Upgrading your Windows 365 machine

Updated on the 25 of September 2022 due to new functionality released to downgrade Cloud PCs

As you might know, the size of a Cloud PC is based on the license you have purchased and assigned to a user. However, sometimes you might assign a too small machine for a user which is causing performance issues for them. It could also be the other way around, that the user has a too powerful machine, which drives an increased cost for your organisation.

How your Cloud PC is performing is measured and presented to you under Reports > Endpoint Analytics in the Microsoft Endpoint Manager admin center (MEM). The report called Resource performance will show you how your Cloud PCs are performing, and if you need to upgrade any of them. (Note that it will take up to 24 hours before you can see data on your Cloud PC)

As you can see, the top two machines have a very low performance score, and if you look at the individual machines they have different needs for an upgrade, one needs more RAM and the other a better CPU.

There are however two caveats to re-sizing a machine.

  1. You can upgrade or downgrade (only upgrade, not downgrade)
  2. If you are using group-based licensing, this does not work
  3. You can not resize Azure AD joined Cloud PCs

The benefit to resizing a Cloud PC compared to just assigning a larger license to the user is that the Cloud PC will remain, just the specification will be upgraded. So all user data is preserved, however, the user will get kicked out of the session while the resizing is happening.

Resize a Cloud PC

Resizing a machine is really simple, you simply navigate to the device in MEM and click the “Resize (preview)” button in the ribbon.

When you have clicked this button, a fly-out menu will open to the left showing you the different sizes. You will be able to see all sizes, but you can only select and apply the size that you have licenses for, so if you select a size you don’t have licenses for it will show an error message as in the picture below and you cannot continue.

You can upgrade vCPU, RAM, and disk space. However, you are limited to only downgrading vCPU and RAM, disk space will not be possible to decrease.

When you have selected the new license through the resizing portal and clicked Resize, the machine will re-provision itself which will take a while.

Once the machine has been reprovisioned, you will notice that you have the same stuff on your Cloud PC as before the resizing but with a different configuration.

Categories
Windows 365

Get started with Windows 365 Enterprise

So you have decided to get going with Windows 365 Enterprise? There are a few steps we need to take care of before you can start consuming the future!

What you will need:

  • Windows 365 licenses
  • Microsoft Endpoint Manager
  • Microsoft 365 licenses of some sort
  • An Azure subscription if you want to use an Azure V-net and not the Microsoft hosted network – optional

Windows 365 is a great way to get started with virtual clients, and it’s actually pretty simple to get going and administrate compared to Azure Virtual Desktop.

Windows 365 licenses

The first thing you need to take care of is obtaining Windows 365 licenses through your licensing partner or where you usually get your licenses. I will leave that one up to you!

There are several different licenses for Windows 365, and there is also a business version that I will not cover in this blog post.

Windows 365 licensing is based on what “size” of a machine you want, basically how many CPUs, the amount of RAM memory, and disk size. As I’m writing this, there are 3 different SKUs of CPUs you can select from (2, 4, and 8). In each SKU of CPUs, there are a few different options in RAM memory and disk size as you can see in the picture below. There is also actually a 1 vCPU version, but that one does not support Windows 11 so I wouldn’t recommend getting that one.

Source: Windows 365 Plans and Pricing | Microsoft

Selecting the correct size of the machine might be a little bit tricky, but Microsoft has actually created a simple cheat sheet you can use to get a feeling of what license to buy which you can find here Windows 365 size recommendations | Microsoft Docs. It’s actually a great guide to get a sense of what size to choose.

One great thing with Windows 365 is that you can upgrade the machines by upgrading the license assigned to the user. However, this does not work if you are using group-based licensing to assign licenses.

Licenses are assigned the same way you assign other Microsoft 365 licenses, either through the Microsoft 365 Admin center or the Azure AD, I will cover this further down

Microsoft Endpoint Manager setup

In Microsoft Endpoint Manager, navigate to Devices > Windows 365 which has now been enabled for you since you have purchased licenses.

To get going with a really basic setup using Azure AD joined and Microsoft hosted network, you only need to create a Provisioning policy and then you are ready.

Click on the Provisioning policies tab and select “+ Create policy”.

On the General step, give your policy a name and select which join type you want, in this example, I will use the Azure AD join and use a Microsoft Hosted network in Western Europe. Please do notice that Azure AD join is still in preview.

When you press next, you will get to select what image you will use. You can either use a gallery image or a custom image, and I will in this example use a gallery image by selecting Gallery image in the drop-down menu and then pressing select. I then get a list of all the available images in the gallery, and also the recommended size/license for each image. I select the image I want, in this case, the Windows 11 image, and press select followed by next.

The next step is to select the region and language for your machine. The default selection is English (United States). In this example, we will leave that to English and press next.

The next step is to assign this to a group of users. I’ve created an Azure AD group which I will assign this to called Windows 365 user, which I will use for my users located in Western Europe since my provisioning policy is creating a Cloud PC in the Western Europe Azure region.

After pressing next we can now review our settings and press Create.

Assigning licenses

There are a few ways of assigning licenses to a user, but in this instance, I will do this from within Microsoft Endpoint Manager.

Search and find the user you want to assign a license to by going to Users > All users on the left side navigation three.

When you have found your user, click on their name then select Licenses to see what licenses they have assigned.

By selecting “+ Assignments” we can add or remove licenses from the user. In this case, we want to add our Windows 365 license which you do by checking the checkbox next to the license, then pressing Save.

You have now successfully assigned a Windows 365 license to your user!

Make sure your user is a member of your provisioning policy group which we selected earlier. When you head back to Devices > Windows 365 and select the All Cloud PCs tab you can see that the provisioning process has started.

Assign configuration profiles and compliance policies

While we are waiting for our Cloud PCs to be provisioned, this usually takes a while, we can go ahead and make sure that we are assigning our configuration policies towards the Cloud PCs. We can either create new ones, specifically for the Cloud PCs, or reuse our existing ones. Since in this case, I’m treating a Cloud PC as any other PC, I will reuse the profiles I already have created for my physical PCs.

If you are assigning configuration profiles and compliance policies towards “All devices” you do not need to do anything. If you are using filters, you need to update your filters to also include Windows 365.

The first thing we need to do is to create a device group that dynamically adds our Cloud PCs by going to Groups in the left side menu and creating a new dynamic group.

We want to add a query looking for devices where the Device model contains “Cloud PC Enterprise”.

The query could look like this:

(device.deviceModel -contains "Cloud PC Enterprise")

When you have added your rule. Save the group and let’s head over to Devices > Windows and add that group to our configuration profiles and compliance policies where we target devices. We can also assign any applications which we deploy to devices using this group.

Connect to your Cloud PC

The easiest way to connect to your Cloud PC is to browse to https://windows365.microsoft.com and sign in with your user.

You can either connect to your VDI directly from the browser, which is a pretty cool experience, by clicking “Open in browser” on the Cloud PC.

You can also download the Remote Desktop app and add the Cloud PC in there. There is a link in the Windows 365 portal to download the application and how to add the Cloud PC.