15、Azure RemoteApp与Azure Active Directory的配置管理指南

Azure RemoteApp与Azure Active Directory的配置管理指南

1. Azure RemoteApp 服务配置

Azure RemoteApp 服务允许用户通过云环境访问应用程序。以下是配置该服务的详细步骤:

1.1 发布 Azure RemoteApp 程序

当 RemoteApp 集合准备好后,就可以发布安装在 RemoteApp 模板映像上的程序了。发布程序时,使用 Publish-AzureRemoteAppProgram cmdlet,同时通过 -FileVirtualPath 参数指定程序可执行文件的路径, -DisplayName 参数指定应用程序的名称。还可以使用 -CommandLine 参数为程序指定额外的参数。例如,若要以安全模式运行 Microsoft Word,可将 -CommandLine 参数值设为 /s

以下是发布 Google Chrome 的示例代码:

# Publish RemoteApp Program - Google Chrome
Publish-AzureRemoteAppProgram -CollectionName col1 `
-FileVirtualPath "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" `
-DisplayName 'Google Chrome'

如果要发布的程序是开始菜单程序,可以用 -StartMenuAppId 参数替代 -FileVirtualPath 参数。可使用 Get-AzureRemoteAppStartMenuProgram cmdlet 获取开始菜单程序。

# Get RemoteApp Start Menu Programs
Get-AzureRemoteAppStartMenuProgram -CollectionName col1 

若要取消发布程序,使用 Unpublish-AzureRemoteAppProgram cmdlet,并通过 -Alias 参数指定要取消发布的程序别名。可使用 Get-AzureRemoteAppProgram cmdlet 获取别名。

# Get RemoteApp Program Alias
$Prog  = Get-AzureRemoteAppProgram -CollectionName col1 | `
Where Name -eq 'Google Chrome' | `
Select Alias 
# Unpublish RemoteApp Program
Unpublish-AzureRemoteAppProgram -CollectionName col1 -Alias $Prog.Alias
1.2 用户分配

最后一个配置步骤是用户分配,即定义哪些用户可以访问 RemoteApp 集合。添加的用户可以来自 Microsoft 账户或 Azure AD 账户。
使用 Add-AzureRemoteAppUser cmdlet,通过 -Type 参数指定用户账户类型( MicrosoftAccount OrgId ),用 -UserUpn 参数指定用户的 UPN。

# Add Azure RemoteApp User
Add-AzureRemoteAppUser -CollectionName col1 `
-Type OrgId `
-UserUpn admin@Company123.com

若要移除用户访问权限,使用 Remove-AzureRemoteAppUser cmdlet,参数与 Add-AzureRemoteAppUser cmdlet 相同。

# Remove Azure RemoteApp User
Remove-AzureRemoteAppUser -CollectionName col1 `
-Type OrgId `
-UserUpn admin@Company123.com

用户分配完成后,访问 http://remoteapp.windowsazure.com 网站,进入下载页面,选择适合自己操作系统的客户端(支持 Windows、Windows Phone、Android、iOS 和 Mac OS X)。安装应用程序,使用企业凭据(或 Microsoft 账户)登录,即可进入 RemoteApp 工作区访问应用程序。

还可以使用 Set-AzureRemoteAppWorkspace cmdlet 更改工作区名称。

# Set RemoteApp Workspace Name
Set-AzureRemoteAppWorkspace -WorkspaceName 'Company123 Workspace'
2. 管理 Azure RemoteApp 会话

管理会话时,首先要了解会话信息,包括会话状态(活动或空闲)、连接的用户及其登录时间。使用 Get-AzureRemoteAppSession cmdlet 查询特定集合的所有 RemoteApp 会话。

# List RemoteApp Sessions
Get-AzureRemoteAppSession -CollectionName col1 

查询结果示例:
| LogonTimeUtc | State | UserUpn |
| ------------ | ----- | ------- |
| 6/25/2015 11:15:10 PM | Connected | admin@Company123.com |
| 6/25/2015 10:19:34 PM | Connected | Sherif@Company123.com |

了解连接用户后,可以采取以下操作:
- 断开会话 :使用 Disconnect-AzureRemoteAppSession cmdlet。

# Disconnect RemoteApp Session
Disconnect-AzureRemoteAppSession -CollectionName col1 `
-UserUpn admin@meacoex.com 
  • 注销会话 :使用 Invoke-AzureRemoteAppSessionLogoff cmdlet。
# Logoff All RemoteApp Sessions
$Sessions = Get-AzureRemoteAppSession -CollectionName col1 
ForEach ( $s in $Sessions )
{
    Invoke-AzureRemoteAppSessionLogoff -CollectionName col1 `
    -UserUpn $s.UserUpn
} 
  • 发送消息 :使用 Send-AzureRemoteAppSessionMessage cmdlet。
# Send Message to All RemoteApp Sessions
$Sessions = Get-AzureRemoteAppSession -CollectionName col1 
ForEach ( $s in $Sessions )
{
    Send-AzureRemoteAppSessionMessage -CollectionName col1 `
    -UserUpn $s.UserUpn `
    -Message "You Session will be terminated in 60 minutes. Please, save you what you doing now."
}

RemoteApp PowerShell 还有两个 cmdlet 可获取 Azure RemoteApp 集合的使用信息: Get-AzureRemoteAppCollectionUsageSummary Get-AzureRemoteAppCollectionUsageDetails

3. Azure Active Directory 概述

Azure Active Directory(Azure AD)是云服务和本地服务的身份与访问解决方案。它与 Windows Server Active Directory 集成,为本地资源、应用程序以及软件即服务(SaaS)应用提供单点登录(SSO)功能。Azure AD 是 Microsoft 在线服务(如 Office 365、Microsoft Intune、Azure RMS 和 CRM Online)的基础。

以下是 Azure AD 的主要功能:
- SaaS 应用的单点登录 :Azure AD 可与超过 2480 个 SaaS 应用集成,不仅提供单点登录,还支持账户预配和取消预配。
- 组管理 :允许用户创建自己的 AD 安全组和 Office 365 组,并可启用组自助服务,委托成员资格请求的批准或拒绝。
- 自助服务密码重置(SSPR) :用户可通过网页门户随时重置密码,且支持密码写回功能,将重置的密码同步回本地 Active Directory。
- 多因素身份验证(MFA) :为访问敏感业务资源或数据的用户添加第二层安全保护,通常先进行基于用户名和密码的身份验证,成功后再进行第二次验证,如电话、短信或令牌验证。
- 设备注册 :允许 Microsoft 及非 Microsoft 操作系统的设备在租户下注册,可通过 Microsoft Intune 强制实施设备策略,并跟踪设备活动。
- 应用程序代理服务(APS) :允许安全地将内部 Web 应用发布给远程和外部用户,加密 Azure 与本地 Web 服务器之间的流量,定义预身份验证方法,应用多因素身份验证和条件访问。
- 安全报告和高级审计 :提供基于机器学习的全面安全报告,可审计对企业资源的每一次访问尝试。

Azure AD 有三个主要版本:免费版、基础版和高级版,各版本功能不同,具体功能列表可参考 https://msdn.microsoft.com/en-us/library/azure/dn532272.aspx

4. 使用 PowerShell 管理 Azure AD

Azure AD 可通过 Windows PowerShell 进行管理,需下载并安装 Windows Azure AD 模块,该模块依赖 Microsoft Online Services Sign-In Assistant for IT Professionals RTW 组件。

下载地址:
- Azure AD 模块: http://go.microsoft.com/fwlink/p/?linkid=236297
- Microsoft Online Services Sign-In Assistant: http://go.microsoft.com/fwlink/?LinkID=286152

安装后,会新增一个 MSOnline 模块。在管理 Azure AD 租户前,需使用 Connect-MSOLService cmdlet 连接到租户。

#Connecting to Azure AD Tenant
Connect-MSOLService -Credential (Get-Credential admin@<YOUR_TENANT>.onmicrosoft.com)
5. 管理 Azure AD 用户

有两种方式将用户添加到 Azure AD:
- 目录同步 :使用 Azure Active Directory Connect(新的 DirSync)将本地 Windows Server AD 与 Azure AD 同步。需使用 Set-MsolDirSyncEnabled cmdlet 启用目录同步。

#Enable Directory Synchronization
Set-MsolDirSyncEnabled -EnableDirSync $true

启用后,可参考 http://blogs.technet.com/b/ad/archive/2014/08/04/connecting-ad-and-azure-ad-only-4-clicks-with-azure-ad-connect.aspx 进行配置。
- 手动创建用户 :使用 New-MSOLUser cmdlet,该 cmdlet 有一系列参数可反映用户的所有信息。

#New-MsolUser cmdlet Parameters
New-MsolUser -DisplayName  -UserPrincipalName  -AlternateEmailAddresses -BlockCredential  
-City  -Country  -Department  -Fax  -FirstName  -ForceChangePassword  -ImmutableId
-LastName  -LicenseAssignment  -LicenseOptions  -MobilePhone  -Office  -Password
-PasswordNeverExpires -PhoneNumber  -PostalCode  -PreferredLanguage  -State  -StreetAddress
-StrongPasswordRequired <Boolean> -TenantId -Title  -UsageLocation

通过以上步骤,你可以全面配置和管理 Azure RemoteApp 服务以及 Azure Active Directory。

Azure RemoteApp与Azure Active Directory的配置管理指南(续)

6. Azure AD 安全报告详解

Azure AD 提供了一系列基于机器学习的安全报告,用于审计对企业资源的每一次访问尝试。以下是对这些报告的详细说明:

报告名称 报告描述
来自未知源的登录 可能表示尝试在不被追踪的情况下登录。
多次失败后的登录 可能表示暴力破解攻击成功。
来自多个地理位置的登录 可能表示多个用户使用同一账户登录。
来自有可疑活动 IP 地址的登录 可能表示在持续入侵尝试后成功登录。
来自可能受感染设备的登录 可能表示尝试从可能受感染的设备登录。
异常登录活动 可能表示与用户登录模式异常的事件。
有异常登录活动的用户 表示账户可能已被泄露的用户。
审计报告 对目录中的事件进行审计。
密码重置活动 提供组织中密码重置的详细视图。
密码重置注册活动 提供组织中密码重置注册的详细视图。
自助服务组活动 提供目录中所有组自助服务活动的日志。
应用程序使用情况 提供与目录集成的所有 SaaS 应用程序的使用摘要。
账户预配活动 提供向外部应用程序预配账户的尝试历史。
密码滚动状态 提供 SaaS 应用程序自动密码滚动状态的详细概述。
账户预配错误 表示对用户访问外部应用程序的影响。

这些报告有助于管理员及时发现潜在的安全风险,采取相应的措施保护企业资源。

7. 管理 Azure AD 组

在 Azure AD 中,组管理是一项重要的功能,它允许用户创建和管理自己的 AD 安全组和 Office 365 组。以下是使用 PowerShell 管理 Azure AD 组的一些常见操作:

7.1 创建组

使用 New-MsolGroup cmdlet 可以创建一个新的组。示例代码如下:

# Create a new Azure AD group
New-MsolGroup -DisplayName "NewGroup" -Description "This is a new group"
7.2 添加成员到组

使用 Add-MsolGroupMember cmdlet 可以将用户或其他组添加到指定的组中。示例代码如下:

# Add a user to a group
Add-MsolGroupMember -GroupObjectId <GroupObjectId> -MemberObjectId <MemberObjectId>

其中, <GroupObjectId> 是组的对象 ID, <MemberObjectId> 是要添加的成员的对象 ID。

7.3 移除组中的成员

使用 Remove-MsolGroupMember cmdlet 可以移除组中的成员。示例代码如下:

# Remove a user from a group
Remove-MsolGroupMember -GroupObjectId <GroupObjectId> -MemberObjectId <MemberObjectId>
7.4 获取组信息

使用 Get-MsolGroup cmdlet 可以获取组的信息。示例代码如下:

# Get information about a group
Get-MsolGroup -ObjectId <GroupObjectId>
8. 分配 Azure AD 许可证

在 Azure AD 中,为用户分配许可证是确保用户能够使用相应服务的重要步骤。以下是使用 PowerShell 分配 Azure AD 许可证的操作步骤:

8.1 获取可用的许可证计划

使用 Get-MsolAccountSku cmdlet 可以获取租户中可用的许可证计划。示例代码如下:

# Get available license plans
Get-MsolAccountSku
8.2 分配许可证给用户

使用 Set-MsolUserLicense cmdlet 可以为用户分配许可证。示例代码如下:

# Assign a license to a user
Set-MsolUserLicense -UserPrincipalName "user@example.com" -AddLicenses "tenant:SKU"

其中, "tenant:SKU" 是许可证计划的标识符。

8.3 移除用户的许可证

使用 Set-MsolUserLicense cmdlet 并结合 -RemoveLicenses 参数可以移除用户的许可证。示例代码如下:

# Remove a license from a user
Set-MsolUserLicense -UserPrincipalName "user@example.com" -RemoveLicenses "tenant:SKU"
9. 总结

通过本文,我们详细介绍了 Azure RemoteApp 服务和 Azure Active Directory 的配置和管理方法。以下是整个配置管理流程的 mermaid 流程图:

graph LR
    classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px;
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;

    A([开始]):::startend --> B(配置 Azure RemoteApp):::process
    B --> B1(发布程序):::process
    B --> B2(用户分配):::process
    B --> B3(管理会话):::process
    B --> B4(获取使用信息):::process
    A --> C(配置 Azure Active Directory):::process
    C --> C1(连接到租户):::process
    C --> C2(管理用户):::process
    C2 --> C21(目录同步):::process
    C2 --> C22(手动创建用户):::process
    C --> C3(管理组):::process
    C --> C4(分配许可证):::process
    C --> C5(查看安全报告):::process
    B --> D([结束]):::startend
    C --> D

在配置 Azure RemoteApp 时,我们学习了如何发布程序、进行用户分配、管理会话以及获取使用信息。在配置 Azure Active Directory 时,我们掌握了如何连接到租户、管理用户、组和许可证,以及查看安全报告。通过这些步骤,你可以构建一个安全、高效的云环境,满足企业的各种需求。

希望本文对你有所帮助,让你能够更好地管理 Azure RemoteApp 和 Azure Active Directory。如果你在实际操作中遇到任何问题,可以参考相关的官方文档或寻求技术支持。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值