Powershell COM +设置

时间:2011-06-28 15:21:54

标签: powershell com+

我正在尝试使用powershell COMAdmin.COMAdminCatalog设置以下值,但我找不到下面的红色设置。任何帮助将不胜感激。

Value looking to set

由于

2 个答案:

答案 0 :(得分:5)

对于相关媒体资源,请参阅Authentication property下的AccessLevelChecks propertyApplications Collection {/ 3}}。

有关如何设置身份验证级别属性的VBScript示例,请参阅COM+ Administration Collections的答案。

转换为PowerShell应该相当直接。这是我的猜测:

$comAdmin = New-Object -comobject COMAdmin.COMAdminCatalog
$apps = $comAdmin.GetCollection("Applications")
$apps.Populate();
$app = $apps | Where-Object {$_.Name -eq "MyAppName"}

# Set Authentication to Packet Authentication
$app.Value("Authentication") = 4 

# Set Security Level to Process and Component level
$app.Value("AccessChecksLevel") = 1 

$apps.SaveChanges()

答案 1 :(得分:4)

这已经回答了,但这是我的“创建新的COM +应用程序和设置属性”脚本。

$comAdmin = New-Object -comobject COMAdmin.COMAdminCatalog
$apps = $comAdmin.GetCollection("Applications")
$apps.Populate();


$newComPackageName = "MyFirstCOMPackage"

$appExistCheckApp = $apps | Where-Object {$_.Name -eq $newComPackageName}

if($appExistCheckApp)
{
    $appExistCheckAppName = $appExistCheckApp.Value("Name")
    "This COM+ Application already exists : $appExistCheckAppName"
}
Else
{
    $newApp1 = $apps.Add()
    $newApp1.Value("Name") = $newComPackageName
    $newApp1.Value("ApplicationAccessChecksEnabled") = 0 <# Security Tab, Authorization Panel, "Enforce access checks for this application #>
    $saveChangesResult = $apps.SaveChanges()
    "Results of the SaveChanges operation : $saveChangesResult"
}
相关问题