09. oktober 2005 - 16:58Der er
7 kommentarer og 1 løsning
VS 2005 - Password fejl
Hej
Jeg har installeret vs2005 beta2, og der igennem generet en standard website, som til min store overraskelse er lige det jeg mangler :op
Men men men der er noget galt, fordi når man ønsker at oprette en ny bruger, så skal man taste bruger navn (ok), og derefter et password, men dette password SKAL åbenbart være det samme som brugernavnet, hvilket jo ikke er særlig smart....
Da alt andet virker ville jeg meget gerne fortsætte med at benytte denne template, hvis jeg blot for denne lille fejl rettet, men jeg har ikke den fjerneste ide til hvor jeg skal kigge efter fejlen så derfor...
Er der ikke en af jer der har installeret VS2005 beta2, som kan hjælpe mig med at finde fejlen, ved at generere en standard hjemmeside..dette gøres start billedet i vs2005 under afsnittet 'Getting started' og i dette afsnit 'Create a personal web site', det hele tager kun 1 min...så please somebody help...
IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END
IF (@CreateDate IS NULL) EXEC dbo.aspnet_GetUtcDate @TimeZoneAdjustment, @CreateDate OUTPUT ELSE SELECT @CreateDate = DATEADD(n, -@TimeZoneAdjustment, @CreateDate) -- switch TO UTC time
SELECT @NewUserId = UserId FROM dbo.aspnet_Users WHERE LOWER(@UserName) = LoweredUserName AND @ApplicationId = ApplicationId IF ( @NewUserId IS NULL ) BEGIN SET @NewUserId = @UserId EXEC @ReturnValue = dbo.aspnet_Users_CreateUser @ApplicationId, @UserName, 0, @CreateDate, @NewUserId OUTPUT SET @NewUserCreated = 1 END ELSE BEGIN SET @NewUserCreated = 0 IF( @NewUserId <> @UserId AND @UserId IS NOT NULL ) BEGIN SET @ErrorCode = 6 GOTO Cleanup END END
IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END
IF( @ReturnValue = -1 ) BEGIN SET @ErrorCode = 10 GOTO Cleanup END
IF ( EXISTS ( SELECT UserId FROM dbo.aspnet_Membership WHERE @NewUserId = UserId ) ) BEGIN SET @ErrorCode = 6 GOTO Cleanup END
SET @UserId = @NewUserId
IF (@UniqueEmail = 1) BEGIN IF (EXISTS (SELECT * FROM dbo.aspnet_Membership m WITH ( UPDLOCK, HOLDLOCK ) WHERE ApplicationId = @ApplicationId AND LoweredEmail = LOWER(@Email))) BEGIN SET @ErrorCode = 7 GOTO Cleanup END END
IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END
IF (@NewUserCreated = 0) BEGIN UPDATE dbo.aspnet_Users SET LastActivityDate = @CreateDate WHERE @UserId = UserId IF( @@ERROR <> 0 ) BEGIN SET @ErrorCode = -1 GOTO Cleanup END END
SELECT @CreateDate = DATEADD( n, @TimeZoneAdjustment, @CreateDate )
IF( @TranStarted = 1 ) BEGIN SET @TranStarted = 0 COMMIT TRANSACTION END
RETURN 0
Cleanup:
IF( @TranStarted = 1 ) BEGIN SET @TranStarted = 0 ROLLBACK TRANSACTION END
RETURN @ErrorCode
END
eller
ALTER PROCEDURE dbo.aspnet_Membership_GetPassword @ApplicationName NVARCHAR(256), @UserName NVARCHAR(256), @MaxInvalidPasswordAttempts INT, @PasswordAttemptWindow INT, @TimeZoneAdjustment INT, @PasswordAnswer NVARCHAR(128) = NULL AS BEGIN DECLARE @UserId UNIQUEIDENTIFIER DECLARE @PasswordFormat INT DECLARE @Password NVARCHAR(128) DECLARE @passAns NVARCHAR(128) DECLARE @IsLockedOut BIT DECLARE @LastLockoutDate DATETIME DECLARE @FailedPasswordAttemptCount INT DECLARE @FailedPasswordAttemptWindowStart DATETIME DECLARE @FailedPasswordAnswerAttemptCount INT DECLARE @FailedPasswordAnswerAttemptWindowStart DATETIME
DECLARE @ErrorCode INT SET @ErrorCode = 0
DECLARE @TranStarted BIT SET @TranStarted = 0
IF( @@TRANCOUNT = 0 ) BEGIN BEGIN TRANSACTION SET @TranStarted = 1 END ELSE SET @TranStarted = 0
SELECT @UserId = u.UserId, @Password = m.Password, @passAns = m.PasswordAnswer, @PasswordFormat = m.PasswordFormat, @IsLockedOut = m.IsLockedOut, @LastLockoutDate = m.LastLockoutDate, @FailedPasswordAttemptCount = m.FailedPasswordAttemptCount, @FailedPasswordAttemptWindowStart = m.FailedPasswordAttemptWindowStart, @FailedPasswordAnswerAttemptCount = m.FailedPasswordAnswerAttemptCount, @FailedPasswordAnswerAttemptWindowStart = m.FailedPasswordAnswerAttemptWindowStart FROM dbo.aspnet_Applications a, dbo.aspnet_Users u, dbo.aspnet_Membership m WITH ( UPDLOCK ) WHERE LOWER(@ApplicationName) = a.LoweredApplicationName AND u.ApplicationId = a.ApplicationId AND u.UserId = m.UserId AND LOWER(@UserName) = u.LoweredUserName
IF ( @@rowcount = 0 ) BEGIN SET @ErrorCode = 1 GOTO Cleanup END
IF( @IsLockedOut = 1 ) BEGIN SET @ErrorCode = 99 GOTO Cleanup END
IF ( NOT( @PasswordAnswer IS NULL ) ) BEGIN IF( ( @passAns IS NULL ) OR ( LOWER( @passAns ) <> LOWER( @PasswordAnswer ) ) ) BEGIN IF( @DateTimeNowUTC > DATEADD( minute, @PasswordAttemptWindow, @FailedPasswordAnswerAttemptWindowStart ) ) BEGIN SET @FailedPasswordAnswerAttemptWindowStart = @DateTimeNowUTC SET @FailedPasswordAnswerAttemptCount = 1 END ELSE BEGIN SET @FailedPasswordAnswerAttemptCount = @FailedPasswordAnswerAttemptCount + 1 SET @FailedPasswordAnswerAttemptWindowStart = @DateTimeNowUTC END
BEGIN IF( @FailedPasswordAnswerAttemptCount >= @MaxInvalidPasswordAttempts ) BEGIN SET @IsLockedOut = 1 SET @LastLockoutDate = @DateTimeNowUTC END END
SET @ErrorCode = 3 END ELSE BEGIN IF( @FailedPasswordAnswerAttemptCount > 0 ) BEGIN SET @FailedPasswordAnswerAttemptCount = 0 SET @FailedPasswordAnswerAttemptWindowStart = CONVERT( DATETIME, '17540101', 112 ) END END
Jeg har i databasen fundet frem til at der er noget der kaldes passwordformat, dette kunne jo godt lyde som om det kunne have med dette at gøre, men jeg forstår ikke helt parametrene i table...
Der er blandt andet et parametre der hedder 'Default Value or Binding' - her er værdien '((0))' - hvad betyder dette?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.