As per this document http://msdn.microsoft.com/en-us/library/dn170478.aspx we have both ways of Authenticating available ACS and SAS. But if I create a Service Bus Namespace there is no ACS option under connection strings.
The document above has this statement “For example, if you create a Service Bus namespace called contoso.servicebus.windows.net, a companion ACS namespace called contoso-sb.accesscontrol.windows.net is provisioned automatically. For all namespaces that were created before August 2014, an accompanying ACS namespace was created.” I had missed this operative part as well, someone has rightly said “To err is human”, so don’t worry if even you missed this in the first read.
My colleague Jaganathan provided the following PowerShell steps which can be used to get the companion ACS namespace for new Service Bus namespace. But if federated authentication is not required by Service Bus we recommend using the SAS connection string in the application.
If want to use ACS authentication (old behavior), they will need to use the PowerShell command below to create the namespace.
1. Acquisition experience: http://www.windowsazure.com/en-us/documentation/articles/install-configure-powershell/
a. Download Azure PowerShell - http://go.microsoft.com/fwlink/p/?linkid=320376&clcid=0x409
b. Configure PowerShell to talk to Azure account:
i. run the command "Add-AzureAccount" and provide Live ID user name/password to connect to a default Azure subscription.
2. Create a new Azure Service Bus namespace using the command –
New-AzureSBNamespace -Name mynamespace -Location "Central US" -CreateACSNamespace $true -NamespaceType Messaging
The output should be something similar to
Name : mynamespace
Region : Central US
DefaultKey : 1eKDTIYEACFP7Geiy5QV/hqJnWHeroJyKk/QAmv42Rw=
Status : Active
CreatedAt : 8/25/2014 3:36:47 PM
AcsManagementEndpoint : https://mynamespace-sb.accesscontrol.windows.net/
ServiceBusEndpoint : https://mynamespace.servicebus.windows.net/
ConnectionString : Endpoint=sb://mynamespace.servicebus.windows.net/; SharedSecretIssuer=owner;SharedSecretValue=1eKDTIYEACFP7Geiy5QV/hqJnWHeroJyKk/QAmv42Rw=
3. Once created this way the portal will display ACS credentials, as before.
Note : For existing Service Bus namespace first delete the namespace from Azure Portal and recreate it from the PowerShell command. This will get re-created immediately if it’s being created in the same subscription. If the deletion and re-creation is being done in two distinct subscription then there is blocking period of 7 days and you need to wait for that.
Cloud Integration Engineering