Edit

Share via


New-AzNotificationHubsNamespaceAuthorizationRule

Creates an authorization rule and assigns that rule to a notification hub namespace.

Syntax

InputFileParameterSet

New-AzNotificationHubsNamespaceAuthorizationRule
    [-ResourceGroup] <String>
    [-Namespace] <String>
    [-InputFile] <String>
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

SASRuleParameterSet

New-AzNotificationHubsNamespaceAuthorizationRule
    [-ResourceGroup] <String>
    [-Namespace] <String>
    [-SASRule] <SharedAccessAuthorizationRuleAttributes>
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

The New-AzNotificationHubsNamespaceAuthorizationRule cmdlet creates a Shared Access Signature (SAS) authorization rule and assigns it to a notification hub namespace. Authorization rules manage user rights to the namespace and to the notification hubs contained with that namespace. This cmdlet provides two ways to create a new authorization rule and assign it to a namespace. You can create an instance of the SharedAccessAuthorizationRuleAttributes object and then configure that object with the property values you want the new rule to possess. This can be done using .NET Framework. You can then copy those property values to your new rule by using SASRule parameter. Alternatively, you can create a JSON (JavaScript Object Notation) file containing the relevant configuration values and then apply those values by using the InputFile parameter. A JSON file is a text file that uses syntax similar to the following: { "Name": "ContosoAuthorizationRule", "PrimaryKey": "W******1Y=", "Rights": [ "Listen", "Send" ] } When used in conjunction with the New-AzNotificationHubsNamespaceAuthorizationRule cmdlet, the preceding JSON sample creates an authorization rule named ContosoAuthorizationRule that gives users Listen and Send rights to the namespace. The PrimaryKey that is used for authentication, can be randomly generated by using the following Windows PowerShell command: [Convert]::ToBase64String((1..32 |% { [byte/](Get-Random -Minimum 0 -Maximum 255) }))

Examples

Example 1: Create an authorization rule and assign it to a namespace

New-AzNotificationHubAuthorizationRule -Namespace "ContosoNamespace" -ResourceGroup "ContosoNotificationsGroup" -InputFile "C:\Configuration\NamespaceAuthorizationRules.json"

This command creates an authorization rule and assigns that rule to the namespace ContosoNamespace. When creating this rule you must specify the appropriate namespace and the resource group that the namespace is assigned to. However, you do not need to specify any information about the rule itself: rule information will be taken from the input file C:\Configuration\NamespaceAuthorizationRules.json.

Parameters

-Confirm

Prompts you for confirmation before running the cmdlet.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:cf

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure

Parameter properties

Type:IAzureContextContainer
Default value:None
Supports wildcards:False
DontShow:False
Aliases:AzContext, AzureRmContext, AzureCredential

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-InputFile

Specifies the path to a JSON file containing configuration information for the new authorization rule.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

InputFileParameterSet
Position:2
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-Namespace

Specifies the namespace to which the authorization rules will be assigned. Namespaces provide a way to group and categorize notification hubs. The new rules must be assigned to an existing namespace. The New-AzNotificationHubsNamespaceAuthorizationRule cmdlet cannot create a new namespace.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:1
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:True
Value from remaining arguments:False

-ResourceGroup

Specifies the resource group to which the namespace is assigned. Resource groups organize items such as namespaces, notification hubs, and authorization rules in ways that help simply inventory management and Azure administration. You must use an existing resource group. This cmdlet cannot create a new resource group.

Parameter properties

Type:String
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

(All)
Position:0
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:True
Value from remaining arguments:False

-SASRule

Specifies the SharedAccessAuthorizationRuleAttributes object containing configuration information for the new rules.

Parameter properties

Type:SharedAccessAuthorizationRuleAttributes
Default value:None
Supports wildcards:False
DontShow:False

Parameter sets

SASRuleParameterSet
Position:2
Mandatory:True
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Parameter properties

Type:SwitchParameter
Default value:None
Supports wildcards:False
DontShow:False
Aliases:wi

Parameter sets

(All)
Position:Named
Mandatory:False
Value from pipeline:False
Value from pipeline by property name:False
Value from remaining arguments:False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

String

Outputs

SharedAccessAuthorizationRuleAttributes