Menu

Apache Authorization?

Help
2013-01-14
2013-01-15
  • Chris Quenelle

    Chris Quenelle - 2013-01-14

    I need my SemanticScuttle installation to work with Apache authorization
    because I already have my enterprise authentication working as an
    apache module. I just need SemanticScuttle to listen to HTTP_REMOTE_USER
    and assume that header has the user name, and use that user name.

    I didn't try installing Auth because it really doesn't look like it will do what I want.

    I'm willing to take a stab at hacking the code, but I could use a few hints.

    Does a user need to be initialized in some way when they first log in?

    I can see a function called "login" in SemanticScuttle/Service/User.php
    which looks like I could hack it to read the HTTP_REMOTE_USER header.
    But that only gets invoked when the user loads the login page.
    I think I want to hook up earlier in the process where the current user
    is tracked as part of the session. I think I want to automatically initialize the
    session before it is first queried.

    Any hints?

    --chris

     
    • Christian Weiske

      Hello Chris,

      But that only gets invoked when the
      user loads the login page. I think I want to hook up earlier in the
      process where the current user is tracked as part of the session. I
      think I want to automatically initialize the session before it is
      first queried.

      The correct solution would be to extend "SemanticScuttle_Service_User",
      register it in your config file as new main user service, e.g.

      $serviceoverrides['User'] = 'SemanticScuttle_Service_ApacheUser';
      and override getCurrentObjectUser() in it.
      That method is called on each call.

      Does a user need to be initialized in some way when they first log in?
      This depends on the user service. You can rely on the default service,
      which means you need to store the users in the user table. If you roll
      your completely own user service (like AuthUser does), you don't need
      to initialize anything and just have to return the correct things in
      the service methods.

      --
      Regards/Mit freundlichen Grüßen
      Christian Weiske

      -=≡ Geeking around in the name of science since 1982 ≡=-

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.