Dynamics CRM 365-недопустимая авторизация пользователя проверка подлинности пользователя, переданная платформе, недопустима

всякий раз, когда я нажимаю на возможность настроить его

Settings - Customization - Opportunity

окне ниже откроется

Invalid User Authorization The user authentication passed to the platform is not valid.

похоже, что окно настройки пытается открыть окно активности, и оно должно открыть окно диаграммы возможностей. Единственной отображаемой ошибкой является "недопустимая авторизация пользователя, аутентификация пользователя, переданная платформе, недопустима" , и в отладке нет ошибок окно.

Примечание:

  • диаграммы возможностей являются единственными диаграммами с этой проблемой. Если я попытаюсь настроить диаграмму компании, проблема не возникнет.
  • публикация диаграммы из xrmtoolbox работает. Проблема возникает только в окне настройки.
  • в серийной версии моего сайта, проблема не возникает.
  • Я попытался очистить кэш браузеров, как было предложено здесь.

---обновление 1 - - -

в ответ на @ConorGallagher

это какие-либо из диаграмм возможностей или только конкретные?

Это все диаграммы возможностей. Ни одна из них не откроется.

вы пытались открыть инструменты разработчика и проверить сеть, чтобы увидеть, что именно не удается?

У меня есть и инструменты разработчика не выявили ошибки.

страница настройки : Customization debug Страница диаграммы: Chart debug

или с помощью fiddler проанализировать его и выяснить, что именно не удается?

Это все, что я получаю от fiddler, когда я нажимаю на диаграмму:

Fiddler debug

существуют ли какие-либо настройки шифрования, которые отличаются между производством и dev?

настройки шифрования одинаковы между двумя.

является ли организация dev копией производственной базы данных или новой установкой?

Dev организация является копией производства, которое работало до обновления на месте.

это происходит, когда вы вошли непосредственно на сервер и попробуйте настроить диаграммы?

Это происходит на ПК и непосредственно на сервере.

---обновление 2---

в ответ на @ConorGallagher

я ожидал, что 401 (или какая-то ошибка http) где-то на вкладке "Сеть" в инструментах разработчика. Можете ли вы дважды проверить эту вкладку, чтобы увидеть.

Я бы тоже, но все в вкладке Сеть-это 200. Кроме первого-это 302. Вижу выход Сашей ржали В.

Network tab

в ответ на @Pawel Gradecki

1) Вы не должны проверить Инструменты разработчика для ошибок скрипта, перейдите на вкладку "Сеть" и проверьте наличие ошибок HTTP.

см. выше snapshoot для @ConorGallagher моего сетевого окна ^.

также вы не включили расшифровку HTTPS на fiddler, поэтому ваш журнал не очень значим, вы должны сначала включить это, а затем перепроверить fiddler

мои извинения вот вывод скрипача с расшифровкой включен: Fiddler output with decryption 1 Fiddler output with decryption 2 Это гораздо полезнее. Кажется, что страница не может найти исходную карту (404), а затем перенаправляется на страницу ошибок (302). Я не уверен, хотя, если он перенаправляет, потому что он не может найти исходную карту или из-за какой-то другой ошибки.

2) проверить логи сервера, они могут показать некоторую дополнительную информацию, которая может быть использована для устранения неполадок

https://raw.githubusercontent.com/MasterProgrammer200/stackoverflow/master/crm/log-opportunity-user-auth.txt

4) Можете ли вы открыть рабочий конструктор диаграмм (например, для учетной записи) и скопировать полный URL-адрес и вставить его в отдельное окно. Сделайте то же самое с диаграммой возможностей (скопируйте и вставьте ее в отдельное окно). Если он все еще не работает для возможности сравнить оба URL-адреса, попробуйте немного поиграть с ними (exchange some query string параметры.)

Я играл с url

https://crmcanada-dev.url.com/main.aspx?appSolutionId=%7bFD140AAF-4DF4-11DD-BD17-0019B9312238%7d&extraqs=etc%3d1%26id%3d%7bA3A9EE47-5093-DE11-97D4-00155DA3B01E%7d&pagetype=vizdesigner#665349499

Companies chart

теперь, если я изменю url кому:

https://crmcanada-dev.url.com/main.aspx?appSolutionId=%7bFD140AAF-4DF4-11DD-BD17-0019B9312238%7d&extraqs=etc%3d3%26id%3d%7bA3A9EE47-5093-DE11-97D4-00155DA3B01E%7d&pagetype=vizdesigner#665349499

(поскольку 1-объект компании, а 3-объект возможности). Я все еще перенаправлен на недопустимую страницу пользователя.

Invalid user auth

не забудьте проверить сервер очень тщательно Трейс, потому что это может сказать тебе что-то важное. Если у вас есть что-то там, вставьте его здесь, чтобы мы также могли взглянуть на него.

см. ссылку выше ^.

еще одна идея, которая пришла мне в голову - попробуйте создать резервную копию базы данных организации, восстановить ее под другим именем, импортировать ее под другим именем (поэтому у вас должна быть отдельная организация на DEV). Иногда при импорте организации возникают ошибки, которые не останавливают сам импорт, но вызывают какое-то странное поведение CRM. Проверьте, имеет ли эта повторно импортированная организация ту же проблему.

Это было бы последним средством.

1 ответов


после недели просьб и жертвоприношений сожженных жертв богам программирования (он же поддержка Microsoft) мы, наконец, смогли выяснить, в чем проблема.

проблема заключалась в том, что до обновления с CRM 2016 до CRM 365 мы удалили управляемое решение, но по какой-то причине одно из полей в представлении не шло с ним. Когда мы перешли на 365 поле неснятую вызвала ошибку. При исследовании мы нашли восклицательный знак в круге рядом с проблемное поле в представлении создателя.

чтобы исправить проблему, мы прошли через каждый вид и удалили хлопотное поле, которое для нас было new_opportunitytype. Затем мы использовали запрос ниже для сканирования базы данных CRM для вхождений new_opportunitytype и должны были удалить его из формы, отредактировав xml в таблице SystemFormBase

короче говоря, скрыть йо детей, скрыть йо жену, проверить йо взгляды, но больше всего Microsoft нуждается в лучшей ошибке обращение.

полезный запрос из службы поддержки Microsoft:

/*This query searches the entire CRM database for the specified string*/

declare @TableName char(256)
declare @ColumnName char(256)
declare @FindString char(256)
declare @sql char(8000)

/*Replace X with character(s) you which to find and Y with its replacement*/
set @FindString = '[enter a guid or string or something]' 

/*select o.name, c.name from syscolumns c inner join sysobjects o
     on o.id = c.id
     where o.xtype = 'U'*/

declare T_cursor cursor for
     select o.name, c.name from sysobjects o inner join syscolumns c
           on o.id = c.id
           where o.xtype = 'U' and c.xtype in (175,239,99,231,35,167)

open T_cursor
fetch next from T_cursor into @TableName, @ColumnName
while (@@fetch_status <> -1)
     begin

     set @sql = 'if exists (select * from ' + rtrim(@TableName) + ' where ' + rtrim(@ColumnName) + ' like ''%' + rtrim(@FindString) + '%'')
           begin
           print ''Table = ' + rtrim(@TableName) + '      Column = ' + rtrim(@ColumnName) + '''
           end'

     exec(@sql)

     fetch next from T_cursor into @TableName, @ColumnName 

     end

close T_cursor

deallocate T_cursor