获取应用于邮箱的 OWA(Outlook Web Access)邮箱策略名称?

获取应用于邮箱的 OWA(Outlook Web Access)邮箱策略名称?

我想获取邮箱上启用的 OWA 邮箱策略的名称。使用获取 CASMailbox命令我可以知道邮箱上是否启用了 OWA 策略,但如果启用了 OWA 邮箱策略,则无法获取其名称。

如果我谈论 ActiveSync 策略获取 CASMailbox命令可以返回有关 ActiveSync 策略是否启用的信息以及 ActiveSync 策略的名称(如果已启用),但不会返回 OWA 邮箱策略的名称。

我以这种方式使用此命令

var asEnabled = false; var asPolicyName = string.Empty; var owaEnableed = false;
var owaPolicyName = string.Empty;
Command cmd = new Command("Get-CASMailbox");
cmd.Parameters.Add("identity", "abc");
cmd.Parameters.Add("DomainController", "abc");
Pipeline pipeline = RunspaceFactory.CreateRunspace(RunspaceConfiguration.Create()).CreatePipeline(); 
pipeline.Commands.Add(cmd);
var result = pipeline.invoke();

 foreach (PSObject ps in results)
 {
     if (ps.Members["ActiveSyncEnabled"].Value != null)
     {
         asEnabled = ps.Members["ActiveSyncEnabled"].Value.ToString().ToLowerInvariant() == "true" ? true : false;
     }

     if (ps.Members["OWAEnabled"].Value != null)
     {
         owaEnabled =  ps.Members["OWAEnabled"].Value.ToString().ToLowerInvariant() == "true" ? true : false;
     }
     if (ps.Members["ActiveSyncMailboxPolicy"].Value != null)
     {
         asPolicyName = ps.Members["ActiveSyncMailboxPolicy"].Value.ToString(); //returns name of ActiveSync policy enabled
     }
     //want to get the name of OWAMailboxPolicy but **Get-CASMailbox** does not return it
 }

这部分代码全部运行正常,但是获取 CASMailbox不含OWA邮箱策略参数因此无法获取该邮箱上启用的 OWA 邮箱策略的名称。

我需要帮助,如何获取在特定邮箱上启用的 OWAMailboxPolicy 名称?

答案1

您能否查看OWA邮箱策略通过运行命令“Get-CASMailbox -Identity “邮箱名称”| fl 名称,OWAMailboxPolicy,OWEAnabled“当您尝试为测试邮箱创建并应用新策略时? 在此处输入图片描述

如果值OWA邮箱策略参数为空,根据安迪·戴维在主题中的回复“如何了解 Owa 邮箱策略用户拥有哪些“,此邮箱正在使用默认OWA邮箱策略在此处输入图片描述

答案2

好的,让我们从头开始:背后是什么版本的Exchange?策略的名称通常存储在OwaMailboxPolicy中。而实际上在未嵌入C#中时这些字段不存在或为空?

相关内容