Ошибка подключения к Azure

я использую эту службу https://xxxx.accesscontrol.windows.net/v2/mgmt/service для получения

Токен ACS, я получаю эту ошибку,

ACS60018: URI «https://xxx.accesscontrol.windows.net/v2/mgmt/service» недействителен, поскольку он не основан на «https://xxxx.accesscontrol.windows.net/v2/mgmt/service». /'. Идентификатор трассировки: ed498472-6a04-4d51-a6ba-4786f0c67212. Отметка времени: 2012-10-16 07:07:09Z

если я попробую с приложением

class Program
    {
        public const string serviceIdentityUsernameForManagement = "ManagementClient";
        public const string serviceIdentityPasswordForManagement = "xxxxxxxxxxx=";
        public const string serviceNamespace = "xxxxx";
        public const string acsHostName = "accesscontrol.windows.net";
        public const string acsManagementServicesRelativeUrl = "v2/mgmt/service/";
        static string cachedSwtToken;        

        static void Main(string[] args)
        {
            //
            // Request a token from ACS
            //
            WebClient client = new WebClient();
            client.BaseAddress = string.Format(CultureInfo.CurrentCulture,
                                               "https://{0}.{1}",
                                               serviceNamespace,
                                               acsHostName);
            NameValueCollection values = new NameValueCollection();
            values.Add("grant_type", "client_credentials");
            values.Add("client_id", serviceIdentityUsernameForManagement);
            values.Add("client_secret", serviceIdentityPasswordForManagement);
            values.Add("scope", client.BaseAddress + acsManagementServicesRelativeUrl);

            byte[] responseBytes = client.UploadValues("/v2/OAuth2-13", "POST", values);

            string response = Encoding.UTF8.GetString(responseBytes);

            // Parse the JSON response and return the access token 
            JavaScriptSerializer serializer = new JavaScriptSerializer();

            Dictionary<string, object> decodedDictionary = serializer.DeserializeObject(response) as Dictionary<string, object>;

            string returnToken= decodedDictionary["access_token"] as string;      
        }
    }

я получаю эту ошибку

"Попытка подключения не удалась, так как подключенная сторона не ответила должным образом через некоторое время, или установленное соединение не удалось, поскольку подключенный хост не ответил 157.56.160.192:443"}

команда может рассказать мне, как я могу получить токен ACS с помощью кода С#,

Заранее спасибо, Сараванан


person Saravanakumar Muthusamy    schedule 16.10.2012    source источник
comment
ознакомьтесь с этими примерами, которые исследуют WebTokens с помощью ACS. Вы найдете много полезных примеров.   -  person astaykov    schedule 16.10.2012


Ответы (1)


Эта ошибка:

ACS60018: URI «https://xxx.accesscontrol.windows.net/v2/mgmt/service» недействителен, поскольку он не основан на «https://xxxx.accesscontrol.windows.net/v2/mgmt/service». /'. Идентификатор трассировки: ed498472-6a04-4d51-a6ba-4786f0c67212. Отметка времени: 2012-10-16 07:07:09Z

Вызвано отсутствием завершающей косой черты в URI управления (спецификация OData касается этого).

person Oren Melzer    schedule 29.10.2012