Inconsistant Question Login Behavior

Hello all,
I am working on implementing our requirements for forgotten password authentication questions. We have a somewhat unique policy regarding this. We want to always have a specific question asked. Then have 2 questions asked that are chosen from a random set. Then have 1 user defined question asked. Since there is no out of the box policy that captures this, I have been working to implement a solution. What I came up with was to redefine the fieldloop in the Question Login Form. Instead of looping through 'questions[*].name' I have it evaluate an expression I wrote. The expression selects questions based on the policy I outlined above. The form is working great. It displays the proper questions in line with our policy. The problem is the authentication of the questions. I have the policy set to 'any'. If I set it to 4 questions, which is how many I am asking, then the application will never let me authenticate. It will continually give me the 'Please answer at least 4 questions' error. At the suggestion of Dana from Aegis, I set the any policy to require only 1 question. The two required questions (the user defined and the admin defined questions) always work fine. However the two random questions work only sporadically. Sometimes I have to enter the answer for one of the random questions as many as 3 or 4 times before it will get excepted. This behavior seems weird. It is not consistent at all.
We are using IdM 6.0 with no service packs. Has anyone ran into this before? Does anyone have any advice about it?

Hi Jim, I had to build the following workflow to implement the password reset. You can tweak activity 3 'Select Questions' to do what you need. This workflow is not finished; it always selects the first three questions; but it I think it is usable.
Have fun with it. Theo
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE TaskDefinition PUBLIC 'waveset.dtd' 'waveset.dtd'>
<TaskDefinition authType='UserAdminTask' name='Task-FindLostPassword' creator='therijn' createDate='1145528788789' lastModifier='therijn' lastModDate='1146135380583' lastMod='536' wstype='ProvisioningTask' taskType='Workflow' executor='com.waveset.workflow.WorkflowExecutor' syncControlAllowed='true' execMode='sync' execLimit='0' resultLimit='3600' resultOption='delete' visibility='run' progressInterval='0'>
  <Extension>
    <WFProcess name='Task-FindLostPassword' title='Find Lost Password' maxSteps='0'>
      <Comments>This process allows an anonymous user to authenticate using the security questions and reset the password.</Comments>
      <Variable name='actionWF' value='findPassword'>
        <Comments>This attribute is used to distinguish between the various actions on the forms.</Comments>
      </Variable>
      <Variable name='userview'/>
      <Variable name='selectedQuestions'/>
      <Variable name='answersOK'>
        <Boolean>true</Boolean>
      </Variable>
      <Variable name='attemptsCount'>
        <Integer>0</Integer>
      </Variable>
      <Activity id='0' name='start'>
        <Transition to='Get Questions'/>
        <WorkflowEditor x='43' y='10'/>
      </Activity>
      <Activity id='1' name='Get Questions'>
        <Action id='0' application='com.waveset.session.WorkflowServices'>
          <Argument name='op' value='getView'/>
          <Argument name='type' value='User'/>
          <Argument name='id'>
            <ref>accountId</ref>
          </Argument>
          <Argument name='options'>
            <Map>
              <MapEntry key='noFetch' value='true'/>
            </Map>
          </Argument>
          <Return from='view' to='userview'/>
        </Action>
        <Transition to='Check Email'/>
        <WorkflowEditor x='122' y='10'/>
      </Activity>
      <Activity id='2' name='Check Email'>
        <Transition to='SetExitMessage'>
          <isnull>
            <ref>userview.accounts[LDAP].email</ref>
          </isnull>
        </Transition>
        <Transition to='SetExitMessage'>
          <isFalse>
            <rule name='RLE-emailValidityAndDomainCheck'>
              <argument name='emailAddress' value='$(userview.accounts[LDAP].email)'/>
            </rule>
          </isFalse>
        </Transition>
        <Transition to='Select Questions'/>
        <WorkflowEditor x='217' y='10'/>
      </Activity>
      <Activity id='3' name='Select Questions'>
        <Action id='0' name='Select questions'>
          <expression>
            <block>
              <defvar name='counter'>
                <i>0</i>
              </defvar>
            <dolist name='iterator'>
              <ref>userview.waveset.questions</ref>
              <block>
                <cond>
                    <and>
                      <lt>
                        <ref>counter</ref>
                        <i>3</i>
                      </lt>
                      <not>
                        <isnull>
                          <invoke name='get'>
                            <ref>iterator</ref>
                            <s>answer</s>
                          </invoke>
                        </isnull>
                      </not>
                    </and>
                    <block>
                      <set name='counter'>
                        <add>
                          <ref>counter</ref>
                          <i>1</i>
                        </add>
                      </set>
                    <set name='selectedQuestions[$(name)].answer'>
                      <s></s>
                    </set>
                    <set name='selectedQuestions[$(name)].origional_answer'>
                      <invoke name='get'>
                        <ref>iterator</ref>
                        <s>answer</s>
                      </invoke>
                    </set>
                    <set name='selectedQuestions[$(name)].question'>
                      <invoke name='get'>
                        <ref>iterator</ref>
                        <s>question</s>
                      </invoke>
                    </set>
                    <set name='selectedQuestions[$(name)].name'>
                      <invoke name='get'>
                        <ref>iterator</ref>
                        <s>name</s>
                      </invoke>
                    </set>
                  </block>
                </cond>
              </block>
            </dolist>
            </block>
          </expression>
        </Action>
        <Transition to='SetExitMessage'>
          <lt>
            <length>
              <ref>selectedQuestions</ref>
            </length>
            <i>3</i>
          </lt>
        </Transition>
        <Transition to='Get Answers'/>
        <WorkflowEditor x='318' y='125'/>
      </Activity>
      <Activity id='4' name='Get Answers'>
        <Variable name='formButton'/>
        <ManualAction id='0' name='Show Authentication Answers' timeout='15' syncExec='true'>
          <WorkItemDescription>
            <s>Show Authentication Answers</s>
          </WorkItemDescription>
          <Owner>
            <ref>WF_CASE_OWNER</ref>
          </Owner>
          <Form noDefaultButtons='true'>
            <Display class='EditForm'>
              <Property name='title' value='Answers Authentication Questions'/>
              <Property name='subTitle' value='If you answer all questions correct your password will be reset and send to your email address. The answers and not case sensitive. Do not attempt to guess the answers if the name is not your name.'/>
            </Display>
            <Field name='variables.userview.accounts[LDAP].fullname'>
              <Display class='Label'>
                <Property name='title' value='_FM_FULLNAME'/>
              </Display>
            </Field>
            <Field>
              <Display class='Label'>
                <Property name='value' value='Please answer all questions correct.'/>
                <Property name='font' value='testFontStyle'/>
                <Property name='color' value='#ff0000'/>
              </Display>
              <Disable>
                <isTrue>
                  <ref>variables.answersOK</ref>
                </isTrue>
              </Disable>
            </Field>
            <Field>
              <FieldLoop for='name' in='variables.selectedQuestions[*].name'>
                <Field name='variables.selectedQuestions[$(name)].answer'>
                  <Display class='Text'>
                    <Property name='title'>
                      <concat>
                        <ref>variables.selectedQuestions[<ref>name</ref>].question</ref>
                        <s>:</s>
                      </concat>
                    </Property>
                    <Property name='width' value='300'/>
                  </Display>
                </Field>
              </FieldLoop>
            </Field>
            <Field name='complete' type='string'>
              <Default>
                <s>true</s>
              </Default>
            </Field>
            <Field button='true'>
              <Display class='Button'>
                <Property name='name' value='variables.formButton'/>
                <Property name='label' value='Continue'/>
                <Property name='command' value='Save'/>
                <Property name='value' value='continue'/>
              </Display>
            </Field>
            <Field button='true'>
              <Display class='Button'>
                <Property name='name' value='variables.formButton'/>
                <Property name='label' value='Cancel'/>
                <Property name='command' value='SaveNoValidate'/>
                <Property name='value' value='cancel'/>
              </Display>
            </Field>
          </Form>
        </ManualAction>
        <Transition to='SetCanceledMessage'>
          <eq>
            <ref>formButton</ref>
            <s>cancel</s>
          </eq>
        </Transition>
        <Transition to='Check Attempts'/>
        <WorkflowEditor x='421' y='137'/>
      </Activity>
      <Activity id='5' name='Check Attempts'>
        <Action id='0'>
          <expression>
            <set name='attemptsCount'>
              <add>
                <i>1</i>
                <ref>attemptsCount</ref>
              </add>
            </set>
          </expression>
        </Action>
        <Transition to='SetTooManyAttemptsMessage'>
          <gt>
            <ref>attemptsCount</ref>
            <i>3</i>
          </gt>
        </Transition>
        <Transition to='Check Answers'/>
        <WorkflowEditor x='540' y='137'/>
      </Activity>
      <Activity id='6' name='Check Answers'>
        <Action id='0'>
          <expression>
            <block>
              <set name='answersOK'>
                <Boolean>true</Boolean>
              </set>
              <dolist name='iterator'>
                <ref>selectedQuestions</ref>
                <cond>
                  <neq>
                    <upcase>
                      <trim>
                        <invoke name='get'>
                          <ref>iterator</ref>
                          <s>answer</s>
                        </invoke>
                      </trim>
                    </upcase>
                    <invoke name='get'>
                      <ref>iterator</ref>
                      <s>origional_answer</s>
                    </invoke>
                  </neq>
                  <set name='answersOK'>
                    <Boolean>false</Boolean>
                  </set>
                </cond>
              </dolist>
              <cond>
                <isFalse>
                  <ref>answersOK</ref>
                </isFalse>
                <s>You must correctly answer all 3 questions</s>
              </cond>
            </block>
          </expression>
        </Action>
        <Transition to='Get Answers'>
          <isFalse>
            <ref>answersOK</ref>
          </isFalse>
        </Transition>
        <Transition to='resetPassword'/>
        <WorkflowEditor x='468' y='248'/>
      </Activity>
      <Activity id='7' name='SetResetPasswordMessage'>
        <Comments>Too many attemps; lock the account will be locked for the next 30 minutes.</Comments>
        <Action id='0' application='SET_RESULT'>
          <Argument name='name' value='WFExitMessage'/>
          <Argument name='type' value='String'/>
          <Argument name='value' value='Your password has been reset. Please check your email.'/>
        </Action>
        <Transition to='end'/>
        <WorkflowEditor x='618' y='166'/>
      </Activity>
      <Activity id='8' name='SetTooManyAttemptsMessage'>
        <Comments>Too many attemps; lock the account will be locked for the next 30 minutes.</Comments>
        <Action id='0' application='SET_RESULT'>
          <Argument name='name' value='WFExitMessage'/>
          <Argument name='type' value='String'/>
          <Argument name='value' value='Too many attemps; your account will be locked for the next 30 minutes.'/>
        </Action>
        <Transition to='end'/>
        <WorkflowEditor x='626' y='27'/>
      </Activity>
      <Activity id='9' name='SetExitMessage'>
        <Comments>Give one common error message so that hackers cannot 'guess' information about or users.</Comments>
        <Action id='0' application='SET_RESULT'>
          <Argument name='name' value='WFExitMessage'/>
          <Argument name='type' value='String'/>
          <Argument name='value' value='Due to a problem with your data we cannot authenticate you using the security questions. Your UserID does not exists, your email address is missing or invalid or you have not answered the security questions.'/>
        </Action>
        <Transition to='end'/>
        <WorkflowEditor x='319' y='10'/>
      </Activity>
      <Activity id='10' name='end'>
        <WorkflowEditor x='421' y='10'/>
      </Activity>
      <Activity id='11' name='resetPassword'>
        <Action id='0' name='Prelude'>
          <expression>
            <set name='actionWF'>
              <s>resetPassword</s>
            </set>
          </expression>
        </Action>
        <Action id='1' process='Reset the Password'>
          <Argument name='adminEmailAddress'/>
          <Argument name='notificationEmailToAddress'>
            <Boolean>false</Boolean>
          </Argument>
          <Argument name='accountId' value='$(accountId)'/>
          <Return from='result' to='result'/>
          <SubProcess>
            <ObjectRef type='Configuration' name='TaskSubProc-ResetPassword'/>
          </SubProcess>
        </Action>
        <Transition to='SetResetPasswordMessage'/>
        <WorkflowEditor x='698' y='248'/>
      </Activity>
      <Activity id='12' name='SetCanceledMessage'>
        <Comments>Set the message that the action is canceled.</Comments>
        <Action id='0' application='SET_RESULT'>
          <Argument name='name' value='WFExitMessage'/>
          <Argument name='type' value='String'/>
          <Argument name='value' value='You canceled answering the authentication questions.'/>
        </Action>
        <Transition to='end'/>
        <WorkflowEditor x='403' y='90'/>
      </Activity>
    </WFProcess>
  </Extension>
  <Description>Reset the User's password after the security questions are answered correctly.</Description>
  <MemberObjectGroups>
    <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
  </MemberObjectGroups>
</TaskDefinition>

Similar Messages

  • Verify Email for Question Login

    Hello all,
    I am trying to verify another data value, such as a users email (just an example) during the forgotten password process. I can add the field to the Question Login Form, but I do not see how to carry it over to the Question Login workflow. The Question Login workflow seems to take in information after an valid or not valid login decision has been made. Where is this decision made? I need to modify this decision making process to include my own variables...

    As requested:
    getRandomIndexes:
    <Rule name='getRandomIndexes'>
    <Description>Return a list of random indexes in the range provided.</Description>
    <RuleArgument name='startOfRange'>
    <Comments>The begining of the range for the indexes.</Comments>
    </RuleArgument>
    <RuleArgument name='endOfRange'>
    <Comments>The end of the range for the indexes.</Comments>
    </RuleArgument>
    <RuleArgument name='numberOfIndexes'>
    <Comments>The number of random indexes to return.</Comments>
    </RuleArgument>
    <block>
    <defvar name='randomInt'>
    <rule name='getRandomIndex'>
    <argument name='startOfRange' value='$(startOfRange)'/>
    <argument name='endOfRange' value='$(endOfRange)'/>
    </rule>
    </defvar>
    <defvar name='indexList'>
    <list/>
    </defvar>
    <defvar name='forLoopIndex'>
    <i>0</i>
    </defvar>
    <while>
    <gt>
    <ref>numberOfIndexes</ref>
    <ref>forLoopIndex</ref>
    </gt>
    <while>
    <contains>
    <ref>indexList</ref>
    <ref>randomInt</ref>
    </contains>
    <set name='randomInt'>
    <rule name='getRandomIndex'>
    <argument name='startOfRange' value='$(startOfRange)'/>
    <argument name='endOfRange' value='$(endOfRange)'/>
    </rule>
    </set>
    </while>
    <append name='indexList'>
    <ref>randomInt</ref>
    </append>
    <set name='forLoopIndex'>
    <add>
    <ref>forLoopIndex</ref>
    <i>1</i>
    </add>
    </set>
    </while>
    <ref>indexList</ref>
    </block>
    </Rule>
    And just for fun, here is getRandomIndex:
    <Rule name='getRandomIndex'>
    <Description>Return a random index in the range provided.</Description>
    <RuleArgument name='startOfRange'>
    <Comments>The begining of the index range.</Comments>
    </RuleArgument>
    <RuleArgument name='endOfRange'>
    <Comments>The ed of the range to provide an index between.</Comments>
    </RuleArgument>
    <block>
    <defvar name='possibleIndex'>
    <mod>
    <invoke name='nextInt' class='com.waveset.util.RandomGen'/>
    <sub>
    <ref>endOfRange</ref>
    <ref>startOfRange</ref>
    </sub>
    </mod>
    </defvar>
    <set name='possibleIndex'>
    <cond>
    <lt>
    <ref>possibleIndex</ref>
    <i>0</i>
    </lt>
    <mult>
    <i>-1</i>
    <ref>possibleIndex</ref>
    </mult>
    <ref>possibleIndex</ref>
    </cond>
    </set>
    <set name='possibleIndex'>
    <add>
    <ref>possibleIndex</ref>
    <ref>startOfRange</ref>
    </add>
    </set>
    <ref>possibleIndex</ref>
    </block>
    </Rule>

  • Login behavior gives warning on manual alteration

    Say, why is it that the Dreamweaver Login Behavior breaks whenever I try to manually insert a new Session variable in it? It tells me "The Server Behavior panel cannot determine whether "Log In User" or "Log In User" is applied to your page. Please select Edit Server Behaviors and change one of the two behaviors to ensure that each is uniquely identifiable."   even though there is only one actual set of code on the page for a Log in behavior

    Are you manually changing the code? DW Server behaviors use a code recognition algorithm to determine if they exist on a page. If you manually alter the code  --performing a change that would could not be accomplished via the behavior-- DW won't be able to recognize it.  Is this what you are referring to?

  • Php mysql login behavior

    Hi the list,
    I have a php/mysql site -, very simple. it's using the
    built-in user authentication behavior. this is fine, checks the
    database and either opens the correct page with a valid user/login
    or opens an error page, if there's no valid login and password set.
    what I need to do is to display a field based on the user and
    password on the receiving page, but I can't seem to get that to
    work. If I get rid of the built-in user authentication and just
    send the login and password to the receiving page as form
    variables, it works fine but then I don't have the error page
    behavior. I'm not a database guy, just kind of floundering here.Any
    help gratefully accepted.

    On Thu, 11 Oct 2007 20:47:04 +0000 (UTC), "paulelwood"
    <[email protected]> wrote:
    > what I need to do is to display a field based on the
    user and password on the
    >receiving page, but I can't seem to get that to work. If
    I get rid of the
    >built-in user authentication and just send the login and
    password to the
    >receiving page as form variables, it works fine but then
    I don't have the error
    >page behavior. I'm not a database guy, just kind of
    floundering here.Any help
    >gratefully accepted.
    Not quite sure what you mean ("display a field") but it
    sounds like
    you want the receiving page to display some information about
    the
    person who has logged in?
    In that case, in the code on your login page, after login has
    been
    verified but before the redirection to the receiving page,
    you should
    set a session variable to be the id of the person logging in.
    Then on
    your receiving page query the database for the person with
    that id and
    retrieve whatever you want. For example, get their given name
    and
    display a personalised welcome to them.
    Hope this is what you meant?
    Steve Fleischer
    steve at flyingtigerwebdesign dot com
    Hong Kong

  • PWA 2013 "Add a new task" - inconsistent task insertion behavior

    Hi all!
    New to the forum and wondering if anyone out there has insight into what I've encountered with the "Add a new task" feature in on-prem Project Server 2013.  
    First some context... I am setting up 12-month projects for different teams to forecast and log their administrative and reactive time for the year.
     We are tracking this within enterprise projects.  The projects have a series of summary tasks that serve to categorize work.  There is a placeholder task within each summary task that establishes duration and where we may assign generic resources
    to establish a baseline cost for the 12 month period for that category of work.  The vision is for team members to go to their PWA Tasks list, "Add a new task", select the project and the summary task to categorize and add their new task to
    the project, enter the task information, and submit for approval.  
    My issue appears when the Project Manager approves a task and opens the project in Project Professional because the system appears to exhibit inconsistent
    behavior - Scenario 1 vs Scenario 2 below.  
    Scenario 1 – Project structure prior
    to adding a new task:
    Project Summary Task, 260d
    -Summary Task, 260d
    --Placeholder Task, 260d, generic resources assigned, ID=n
    -Summary Task, 260d
    Team member adds a new task and submits.  The new task is inserted as a child task to the summary task selected when adding
    the new task.  This is what PWA Approval Preview shows and what is found when file is opened in Project Professional:
    Project Summary Task, 260d?
    -Summary Task, 260d?
    --New task just added, 2d?, named resource assigned, ID=n
    --Placeholder Task, 260d, generic resources assigned, ID=n+1
    -Summary Task, 260d
    Scenario 2 – Same project structure as scenario 1... team member submits a new task
    and the new task is inserted per below.  This is NOT what PWA Approval Preview shows.  PWA shows the new task as a child of the summary task.  Once approved and the file is opened in Project Professional, the task instead reflects as a child
    task to the placeholder task, and impacts the duration of the original summary task:
    Project Summary Task, 260d?
    -Summary Task, 2d?
    --Placeholder Task, 2d?, generic resource assignments, ID=n
    ---New task just added, 2d?, named resource assigned, ID=n+1
    -Summary Task, 260d
    I am using separate project files to produce the scenario, and as far as I can tell they are set up exactly the same, but one file consistently produces
    scenario 2 behavior and the other consistently produces scenario 1 behavior. It seems that something is different between the two files and causing the issue, but I can't figure out what it is.  
    Any idea what I could do to establish consistent (preferably Scenario 1) task insertion behavior from PWA?

    Anyone else running into this?  We're now on the April CU and still experiencing this apparent bug.  I've replicated it in different PWA instances using "Add a new task" from both the timesheet and tasks.  
    It only happens on certain projects as Greg mentioned... One way we've been able to pinpoint where it's taking place:  since the bug causes a task to become a summary task, and since most of our tasks have assignments, if a project contains any summary
    tasks with assignments, those may be an early indicator of the bug (after we rule out PM-induced summary task assignments).  
    We're seeing this impact our project actuals and reports, so there is a fair amount of going back through approval history and restoring actual hours to the correct calendar dates in the Project Client.  Not ideal, because we are planning to lock that
    capability down in the near future.
    On a whim, I tried using the "Save for sharing" method to fix the issue, and new tasks appeared to insert correctly after that.  Seems OK for a workaround (we'll see how durable it is), but better yet would be consistent new task insertion
    behavior.

  • Inconsistent font style behavior on Edge Reflow CC (Preview) for Windows

    Adobe Edge Reflow CC Preview for Windows has wildly inconsistent behavior regarding font styles. Why is there no button for bold in the UI? Why do I have to type "bold" into the Weighting dialog text box to have my styled text render as such in Chrome? Why does text inside a box/div styled with the italics button render in Reflow but not in Chrome?

    Hey there,
    The font weight can be changed here:
    With CSS there are both text values such as "bold" and numerical values from 100-900 usually. We gave you the ability to use either.
    If you are seeing issues with a font rendering set to italic in Reflow and not in previewing properly in Chrome, can you let me know the typeface you are using? I'd like to check it out as well.

  • Question - Login/min_password_digits to 1

    Hello,
    We are adding complexity on our passwords.  We have tested "Login/min_password_digits to 1" in DEV and QA successfully and ready to move to PROD.  The numeric value on passwords is now being required.  I have overlooked one possibility and could not test without delaying the deployment for another week since system restart is only on the weekends.  My question is the u201Cwhat ifu201D in the scenario I was not able to test. 
    What happens to the user/users with password that currently do NOT have any numeric value/values?  Do they get immediately prompted to change their password with numeric when "Login/min_password_digits to 1" is in effect or only when their password expired and prompted to change?
    We are running ECC 6.0 and SAPGUI: 710 Final Release, version 7100.2.8.1039, patch level 8.
    Thanks in advance.
    John N.

    Julius Bussche wrote:Julius Bussche wrote:Julius Bussche wrote:>
    > > No, you are wrong - communication users are (in principle) also subject of the password change requirements.
    > > See note 622464.
    > Not in principle, but John's observation is correct in practice. This is not default behaviour either.
    Well - if a password change is currently not enforced although it should be, then this is nothing one should rely on ...
    > > But you can configure the system (by setting login/password_compliance_to_current_policy to value 1) to check every time a password is validated whether it's still compliant with the current password rule.
    > Not every time. A SYSTEM and SERVICE type user's password would not be subject to this, even if it was activated.
    Yes, you are right - that point I've forgotten to mention in my posting (but it's documented in the system: the RZ11 documentation of that profile parameter is quite precise).
    >
    > To mimic any downward compatibility or client programs which might set the PWD to UPPER CASE, I simply don't force a lower case password and for special users change the generated characters to UPPER CASE and ensure that the it does not exceed 8 characters.
    Sorry, that's not entirely true: even if you do not enforce the usage of lower-case characters in passwords this does not ensure that you obtain downwards-compatible passwords: as long as you do not prevent the usage of lower-case characters and as long as you do not prevent the usage of passwords which consist of more than 8 characters, you have to deal with (potentially) downwards-incompatible passwords.
    >
    > But my weapon of choice against this is still rfc/reject expiredpassword and now also icf/reject_expired_password. I find these parameters very efficient in keeping security up to scratch, if the implementation (or clean-up) was done thoroughly.
    Do you really think that those two parameters can be set to non-default values in productive systems? I have my (personal) doubts - they are main switches ("on" / "off") effecting the entire system.

  • Site Login Behavior For SharePoint Foundation 2013 Users With Expired Passwords?

    What are the most user-friendly ways of getting external users with expired AD passwords back into the SharePoint site with a new working password?
    We already send automated email notifications to users reminding them to change their soon-to-expire passwords.  However, sometimes they miss seeing the email notifications before the password expires (such as after returning from vacation or just carelessness
    and lack of attention to email messages) or they see the warning messages and forget to act on it.
    When this happens and they try to log into the SharePoint site from the Internet, their login fails without telling the user the reason they can't log in is because their password expired.  So, they end up confused and call the help desk to get their
    password reset.
    Is there a way to set up SharePoint Foundation 2013 login in a similar way to the OWA login so that, when a user with a correct but expired password tries to log in, it gives them a prompt to set a new password right there rather than just an error indicating
    their login failed for unknown reasons or password is "incorrect?"

    It could be done. You get a different event log entry for an expired login attempt than for a wrong password, 4625 events denote a login failure and an error ID of 23 denotes a logon failure.
    A naff, but simple, approach would be to create a tool that checks your server logon event log for 4625 entries and then emails that user, or the help desk, or security, that they're trying to get onto your system with expired credentials.
    For a more polished experience you've got a lot more work and bluntly it's going to be impractical for you. You'd have to re-write sections of the SharePoint authentication process or intercept the process, both are risky and not a good idea to try.
    There's a really interesting paper here that might be of interest, it won't help you in your current situation but it might shed more light on the overall authentication/authorisation process.
    http://www.sans.org/reading-room/whitepapers/forensics/windows-logon-forensics-34132

  • Setting flags on question login

    Hi,
    I'm trying to set an attribute on the user object when the user goes through the QuestionLogin workflow.
    The behavior I've observed is that if I checkout the user using "checkout view":
    <Action id='1' name='checkoutview' application='com.waveset.session.WorkflowServices'>
    <Argument name='op' value='checkoutView'/>
    and then try to checkin the view:
    <Action id='1' name='Check In View' application='com.waveset.session.WorkflowServices'>
    <Argument name='op' value='checkinView'/>
    <Argument name='view'>
    the user locks up.
    HOWEVER, if I "get" a user view: (NOTE that's it's a "getView", not a "checkout view")
    <Action id='1' name='getUser' application='com.waveset.session.WorkflowServices'>
    <Argument name='op' value='getView'/>
    and then I try to check it in (which shouldn't work), the attributes I'm manipulating are actually saved!!
    If I do a "getView" and don't check anything in, none of the changes are saved.
    It seems to me like this is a product bug - perhaps there are overlapping pointers somewhere? Can anyone speak to this anomaly?
    I'm on version 7.0 (which may be an issue in and of itself :) )
    Thanks

    You are right Tushir, It depends on the template used.
    @ William::Well Is it possible for you to Acknowledge ur Chassis?
    It might help to solve your problem.,,,,Well its just a try and dont forget that the entire Hardware Config will be re read if you acknowldege ur Chassis.

  • Strange freeze and login behavior in 10.4.6

    Here's a weird one: the other day, shortly after I booted and opened Safari, my G3 iBook froze completely -- no cursor movement, nothing. I rebooted, but this time it took at least 5 minutes to reboot, and when it did, it presented me with the login screen (my iBook is normally set to automatically login under my user name). I entered my user name and password, but got the "screen shake", indicating it would not accept my user name and/or password. (and before you ask, both user name and password were entered correctly). Nothing would get it to work, so I rebooted from my other hard drive and ran DiskWarrior, which reported nothing wrong, but I replaced the directory anyway. I got the recalcitrant login screen again. I rebooted into the other hard drive again, ran TechTool Pro 4's diagnostics on the files and did a surface scan -- still no luck. I finally reinstalled the iBook's backup which was also on the other hard drive (thank heavens for SuperDuper!) and was able to get the iBook to boot normally.
    Can anyone explain what may have happened, and how I can avoid it in the future?
    Thanks. . .
    iBook G3 500 MHz   Mac OS X (10.4.6)  

    Here's a weird one: the other day, shortly after I booted and opened Safari, my G3 iBook froze completely -- no cursor movement, nothing. I rebooted, but this time it took at least 5 minutes to reboot, and when it did, it presented me with the login screen (my iBook is normally set to automatically login under my user name). I entered my user name and password, but got the "screen shake", indicating it would not accept my user name and/or password. (and before you ask, both user name and password were entered correctly). Nothing would get it to work, so I rebooted from my other hard drive and ran DiskWarrior, which reported nothing wrong, but I replaced the directory anyway. I got the recalcitrant login screen again. I rebooted into the other hard drive again, ran TechTool Pro 4's diagnostics on the files and did a surface scan -- still no luck. I finally reinstalled the iBook's backup which was also on the other hard drive (thank heavens for SuperDuper!) and was able to get the iBook to boot normally.
    Can anyone explain what may have happened, and how I can avoid it in the future?
    Thanks. . .
    iBook G3 500 MHz   Mac OS X (10.4.6)  

  • More ZPM in ZCM questions--intended behavior?

    Perhaps I am doing something wrong or not looking in the correct spot.
    If I use ZPM in ZCM, there seems to be some deficiencies:
    a) Refresh of patch status. Meaning I go into Patch Management, click on a patch and select Actions -> Update Cache. I get the icon to change animation but it NEVER changes status unless you manually refresh the web browser. I do not believe that ZPM 6.4.x (Novell branded product) behaves this way. I think the ZPM 6.4.x will refresh the page automatically for you so you know when it's done downloading.
    b) Patch deployment status - you can't really tell what's going on with the devices. In ZPM 6.4.x I can go into devices and I see animations as to what the machine status is (is it on, is it doing a DAU, is it deploying a patch). I don't seem to be able to find any of this information in ZCM (meaning I can't just look at the device icon and see what it's doing, I have to go into the patches tab or something to see if it got deployed, but I don't know what the "live" status of the machine is).
    c) Patch Deploys in general - I am pretty sure I can go into ZPM 6.4.x and find my deployment tab and see what I chose to deploy, when, and to which machines. I don't seem to be able to find this in ZCM. I do see something like "deploy on some heinous formatted date/time" but that's it. I have to scrounge around inside the deploy to the actions section and even then it doesn't reall show me in a nice format which machines it was deployed to, let alone the status of the machines.
    Again, I could be looking in the wrong spot, or perhaps it's not there.

    In response here we've gone through great efforts to make the integration consistent with ZCM behavior.
    a) Only a couple of pages do auto refresh of status in ZCM. This is to allow for the greatest performance. ZPM is consistent with the rest of the ZCM behavior such as bundle status and policy status. By refreshing the page status updates.
    b) Since all deployments are done using the bundle system in ZCM you can track all status of ZPM deployments by looking at the Bundle status. There is a ZPM Assignment bundle created for each deployment. It should have status of deliveries and errors if you look at it.
    c) You should be able to go to the ZPM Assignment bundle and look at the Install Action Set. It will show you which patches are being deployed.

  • Strange eBay login behavior

    When I enter my login data on the usual eBay webpage, it redirects to another page that thanks me for signing out! if I hit the sign in link and login again, I get to my account as usual.
    Here is the page that I get redirected to:
    http://signin.ebay.com/ws/eBayISAPI.dll?SignOutConfirm&i=.58020011100101000420004900085000780009300041
    Any ideas?
    == This happened ==
    Every time Firefox opened
    == last few weeks, definitely since I installed latest Firefox version.

    OK.
    Maybe this will help some other people who are having ebay login issues. I was using a bookmarked login page, and THAT is the problem. I guess that ebay has changed something in their login procedure. If I go to the homepage, and click on myebay, and login through that link, I have no problem.
    Just for laughs, I copied the 2 different addresses to compare, and they are indeed different addresses.
    bad one
    good one
    https://signin.ebay.com/ws/eBayISAPI.dll?SignIn&co_partn.....
    https://signin.ebay.com/ws/eBayISAPI.dll?SignIn&UsingSSL.....

  • Question about behaviors

    When you select a thumbnail and add a behavior to have it
    open in a new window.....can you change the background in the blank
    window to black? How would you format this? The behavior attribute
    has not option for background color...so how can this be done?
    thanks from Pam Lane

    You have to create a HTML page with a black background, put
    the
    full-size image in it and have the thumbnail open that page
    in the new
    window.
    James M. Shook
    http://www.jshook.com

  • Inconsistent  runtime javacpl behavior

    The 1.5.0 javacpl is behaving very differently between my work & home computers. I seek some debug insight:
    At work- on a windows XP SP1 machine, a fully default install of jre-1_5_0-windows-i586.exe- When I start up either Firefox 1.0 or IE6 is get the expected behavior - the javacpl (control panel ) icon comes up in the system tray. At work the homepage is the company intranet and if java is not there Firefox would have popped up the prompt to install missing plug ins.
    At home- on a Sony VAIO running XP home SP2, a custom install of jre-1_5_0-windows-i586.exe, where the only thing done custom is to change the partion being installed on to from C: to D: (due to the stupid way Sony partitioned the machine).- when I start up Firefox 1.0 I do not get the javacpl icon appearing in the system tray. Neither do I yet see a Firefox popup window saying I need to install a missing plug in.
    1) Could this be normal and simply mean that at home I have not hit a web page yet that requires the java plug in? If so, can someone please give me a URL that would guarantee needing the java plug in, so I can test that my install is okay. The two java check boxes in the Firefox options are checked to on.
    2) If this behavior is not normal, does anyone have suggestions of things to try. I have done an uininstall, reboot, then a reinstall of the java runtime, and I still am not seeing that coffee cup icon pop into the system tray when I start my web browser. Why does it show up at work but not at home?

    1) Could this be normal and simply mean that at home I have not hit a web page yet that requires the
    java plug in? If so, can someone please give me a URL that would guarantee needing the java plug in,
    so I can test that my install is okay. The two java check boxes in the Firefox options are checked to on. Just try to run an applet, they require the Java plug-in. Either try one here
    http://java.sun.com/j2se/1.5.0/docs/relnotes/demos.html
    or, if you installed the demo programs, you'll find some in (your directory equivalent to)
    C:\Program Files\Java\jdk1.5.0\demo

  • Question. login to fluxbox. autostart command. don't sudo. ?

    The system includes a normal user (via the console).
    He called FLUXBOX.
    How can I make this addition to the three revealed a terminal window as root with some of these teams?
    p.s: without using sudo. all automatically should be.

    I'm sorry. I don't understand. Is this correct?
    boot -> normal user login -> start X and Fluxbox -> autostart terminal window as root
    Add "sudo xterm &" in the file "~/.fluxbox/startup".
    To remove the "sudo" password, use "visudo". http://wiki.archlinux.org/index.php/Sudo
    I think an automatic xterm with root is dangerous.

Maybe you are looking for