шаблон проекта dotnetopenauth asp.net mvc2 - поврежденный при выполнении от localhost:xxxx

Таким образом, я создаю новый сайт dnoa mvc2 из шаблона, выполняю setup.aspx без проблемы, вхожу и авторизовываю мой открытый - все хорошо, но на перенаправлении к

http://localhost:18916/Auth/PopUpReturnTo?dnoa.uipopup=1&dnoa.popupUISupported=1&index=0&dnoa.userSuppliedIdentifier=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid&dnoa.op_endpoint=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fud&dnoa.claimed_id=&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.mode=id_res&openid.op_endpoint=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fud&openid.response_nonce=2010-07-24T18%3A06%3A36ZcustWWIY5CfXTQ&openid.return_to=http%3A%2F%2Flocalhost%3A18916%2FAuth%2FPopUpReturnTo%3Fdnoa.uipopup%3D1%26dnoa.popupUISupported%3D1%26index%3D0%26dnoa.userSuppliedIdentifier%3Dhttps%253A%252F%252Fwww.google.com%252Faccounts%252Fo8%252Fid%26dnoa.op_endpoint%3Dhttps%253A%252F%252Fwww.google.com%252Faccounts%252Fo8%252Fud%26dnoa.claimed_id%3D&openid.assoc_handle=AOQobUdkpLPAPC1LRQKPaQcy2UlG8R4pjWmpDCSV_1odtA33o_HfNleiMi9ZjX8RU-kIIJnJ&openid.signed=op_endpoint%2Cclaimed_id%2Cidentity%2Creturn_to%2Cresponse_nonce%2Cassoc_handle%2Cns.ext1%2Cext1.mode%2Cext1.type.alias3%2Cext1.value.alias3%2Cext1.type.alias1%2Cext1.value.alias1&openid.sig=zkBfpugK7xT0da49hZLNQZz4Xn83UiZB%2BhEHz6B37Cw%3D&openid.identity=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawk3FGqct35R7wya-0Bkq-0_Qnc1AB-YSw4&openid.claimed_id=https%3A%2F%2Fwww.google.com%2Faccounts%2Fo8%2Fid%3Fid%3DAItOawk3FGqct35R7wya-0Bkq-0_Qnc1AB-YSw4&openid.ns.ext1=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0&openid.ext1.mode=fetch_response&openid.ext1.type.alias3=http%3A%2F%2Fschema.openid.net%2Fcontact%2Femail&openid.ext1.value.alias3=sky.sanders%40gmail.com&openid.ext1.type.alias1=http%3A%2F%2Faxschema.org%2Fcontact%2Femail&openid.ext1.value.alias1=sky.sanders%40gmail.com&openid.ns.ext2=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fui%2F1.0&openid.ext2.mode=popup

все, что я получаю, является предупреждением [object Error].

'Начало работы' говорит, что все, что я должен сделать, будят набор базы данных, и я был бы хорош для движения.

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

В любом случае, что требуется, чтобы получать эту работу localhost:xxx (cassini/cassinidev)?

1
задан Sky Sanders 24 July 2010 в 18:13
поделиться

2 ответа

То, что вы видите, связано с ошибкой в ​​IE8, связанной с пересечением зон доверия (от локального компьютера / интрасети к зоне Интернета). Если вы используете браузер, отличный от IE, он будет работать. Когда вы публикуете свой веб-сайт в Интернете, IE8 будет работать нормально, потому что он не переходит в зону интрасети во время входа в систему.

1
ответ дан 2 September 2019 в 22:47
поделиться

Я использую метод, который вы мне дали раньше для аутентификации, и вот мой код аутентификации контроллера

    <ValidateInput(False)> _
    Public Function Authenticate(ByVal returnUrl As String) As ActionResult
        Dim response = openid.GetResponse()
        If response Is Nothing Then
            ' Stage 2: user submitting Identifier
            Dim id As Identifier

            If Identifier.TryParse(Request.Form("openid_identifier"), id) Then

                Try
                    Return openid.CreateRequest(Request.Form("openid_identifier")).RedirectingResponse.AsActionResult()
                Catch ex As ProtocolException
                    ViewData("Message") = ex.Message
                    Return View("Login")
                End Try

            Else

                ViewData("Message") = "Invalid identifier"
                Return View("Login")
            End If
        Else
            ' Stage 3: OpenID Provider sending assertion response
            Select Case response.Status
                Case AuthenticationStatus.Authenticated

                    If Not OpenIDService.IsOpenIdAssociated(response.ClaimedIdentifier) Then
                        UserService.AddUser(response.ClaimedIdentifier, response.FriendlyIdentifierForDisplay)
                        UserService.SubmitChanges()

                        ActivityLogService.AddActivity(OpenIDService.GetOpenId(response.ClaimedIdentifier).UserID, _
                                                           Utilities.ActivityLog.LogType.UserAdded, _
                                                           HttpContext.Request.UserHostAddress)

                    Else
                        ActivityLogService.AddActivity(OpenIDService.GetOpenId(response.ClaimedIdentifier).UserID, _
                                                           Utilities.ActivityLog.LogType.UserLogin, _
                                                           HttpContext.Request.UserHostAddress)
                    End If
                    ActivityLogService.SubmitChanges()


                    ' Create the authentication cookie.  This cookie
                    ' includes the AuthUserData information in the
                    ' userData field of the FormsAuthentication Cookie.
                    Dim authUser As Authentication.AuthUserData = New Authentication.AuthUserData(OpenIDService.GetOpenId(response.ClaimedIdentifier).User)
                    HttpContext.Response.Cookies.Add(Authentication.CustomAuthentication.CreateAuthCookie(response.ClaimedIdentifier, _
                                                                                                                                  authUser, _
                                                                                                                                  True))
                    authUser = Nothing

                    If Not String.IsNullOrEmpty(returnUrl) Then : Return Redirect(returnUrl)
                    Else : Return RedirectToAction("Index", "Events")
                    End If

                Case AuthenticationStatus.Canceled
                    ViewData("Message") = "Canceled at provider"
                    Return View("Login")

                Case AuthenticationStatus.Failed
                    ViewData("Message") = response.Exception.Message
                    Return View("Login")

            End Select
        End If
        Return New EmptyResult()
    End Function

У меня есть пользовательская таблица в моей базе данных под названием Users, а также таблица OpenIDs с полем UserID. Таблица OpenIds позволяет мне иметь неограниченное количество OpenIds для каждого пользователя.

Все это работает как локально для меня, так и на рабочем сервере и сервере staging.

1
ответ дан 2 September 2019 в 22:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: