使用 Windows PowerShell 管理角色型存取控制

適用於:Windows Server 2022、Windows Server 2019、Windows Server 2016

您可以使用本主題來了解如何使用 IPAM 透過 Windows PowerShell 管理基於角色的存取控制。

注意

有關 IPAM Windows PowerShell 指令參考,請參閱Windows PowerShell 中的 IpamServer cmdlet

新的 Windows PowerShell IPAM 命令可讓您擷取和變更 DNS 和 DHCP 物件的存取範圍。 下表說明了用於每個 IPAM 物件的正確命令。

IPAM 物件 Command 描述
DNS 伺服器 取得 IpamDnsServer 此 cmdlet 傳回 IPAM 中的 DNS 伺服器對象
DNS 區域 取得 IpamDnsZone 此 cmdlet 傳回 IPAM 中的 DNS 區網域對象
DNS資源記錄 取得 IpamResourceRecord 此 cmdlet 傳回 IPAM 中的 DNS 資源記錄對象
DNS 條件轉送器 取得 IpamDnsConditionalForwarder 此 cmdlet 傳回 IPAM 中的 DNS 條件轉送器對象
DHCP 伺服器 取得 IpamDhcpServer 此 cmdlet 傳回 IPAM 中的 DHCP 伺服器對象
DHCP 超級領域 取得 IpamDhcpSuperscope 此 cmdlet 傳回 IPAM 中的 DHCP 超級範圍對象
DHCP 領域 取得 IpamDhcpScope 此 cmdlet 傳回 IPAM 中的 DHCP 範圍對象

在下列命令輸出範例中, Get-IpamDnsZonecmdlet 檢索 dublin.contoso.com DNS 區網域。

PS C:\Users\Administrator.CONTOSO> Get-IpamDnsZone -ZoneType Forward -ZoneName dublin.contoso.com

ZoneName             : dublin.contoso.com
ZoneType             : Forward
AccessScopePath      : \Global\Dublin
IsSigned             : False
DynamicUpdateStatus  : None
ScavengeStaleRecords : False

設置 IPAM 物件的存取範圍

您可以使用該指令設置 IPAM 物件的存取Set-IpamAccessScope範圍。 您可以使用此命令將物件的存取範圍設置為特定值,或使物件從主物件繼承存取範圍。 以下是您可以使用此命令設置的物件。

  • DHCP 領域

  • DHCP 伺服器

  • DHCP 超級領域

  • DNS 條件轉送器

  • DNS資源記錄

  • DNS 伺服器

  • DNS 區域

  • IP 位址區塊

  • IP 位址範圍

  • IP位址空間

  • IP位址子網路

以下是該指令的Set-IpamAccessScope語法。

NAME
    Set-IpamAccessScope

SYNTAX
    Set-IpamAccessScope [-IpamRange] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]  [<CommonParameters>]

    Set-IpamAccessScope [-IpamDnsServer] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamDhcpServer] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamDhcpSuperscope] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamDhcpScope] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamDnsConditionalForwarder] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamDnsResourceRecord] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamDnsZone] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamAddressSpace] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]
    [<CommonParameters>]

    Set-IpamAccessScope [-IpamSubnet] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]  [<CommonParameters>]

    Set-IpamAccessScope [-IpamBlock] -InputObject <ciminstance[]> [-AccessScopePath <string>] [-IsInheritedAccessScope] [-PassThru] [-CimSession <CimSession[]>] [-ThrottleLimit <int>] [-AsJob] [-WhatIf] [-Confirm]  [<CommonParameters>]

在以下範例中,DNS 區網域 dublin.contoso.com 的造訪範圍從 Dublin 變更為 Europe

PS C:\Users\Administrator.CONTOSO> Get-IpamDnsZone -ZoneType Forward -ZoneName dublin.contoso.com

ZoneName             : dublin.contoso.com
ZoneType             : Forward
AccessScopePath      : \Global\Dublin
IsSigned             : False
DynamicUpdateStatus  : None
ScavengeStaleRecords : False

PS C:\Users\Administrator.CONTOSO> $a = Get-IpamDnsZone -ZoneType Forward -ZoneName dublin.contoso.com
PS C:\Users\Administrator.CONTOSO> Set-IpamAccessScope -IpamDnsZone -InputObject $a -AccessScopePath \Global\Europe -PassThru

ZoneName             : dublin.contoso.com
ZoneType             : Forward
AccessScopePath      : \Global\Europe
IsSigned             : False
DynamicUpdateStatus  : None
ScavengeStaleRecords : False