Renaming NDS users to their corresponding GroupWise ID

Hi,
We're renaming lots of NDS users to their corresponding GroupWise ID.
Because of a new ID naming standard. The GroupWise ID does not change but
is leading.
As in NDS ID smithj has a GroupWise ID jsmith so we rename NDS ID smithj to
jsmith. We do this btw using RENOBJ from JRB utilities.
This means clicking on the GroupWise account from the GroupWise view in
ConsoleOne results in an error. This can be repaired 'by hand' by
re-associating the GroupWise account to the NDS account. We also tried JRB
utility GWLINK but this does not work either.
My question is 'is it possible to run / did someone write / a script to do
this batch/script wise ?'
Gert

[email protected] schrieb:
> Hi,
>
> We're renaming lots of NDS users to their corresponding GroupWise ID.
> Because of a new ID naming standard. The GroupWise ID does not
> change but is leading.
>
> As in NDS ID smithj has a GroupWise ID jsmith so we rename NDS ID
> smithj to jsmith. We do this btw using RENOBJ from JRB utilities.
>
> This means clicking on the GroupWise account from the GroupWise view
> in ConsoleOne results in an error. This can be repaired 'by hand' by
> re-associating the GroupWise account to the NDS account. We also
> tried JRB utility GWLINK but this does not work either.
>
> My question is 'is it possible to run / did someone write / a script
> to do this batch/script wise ?'
you can use ldap / or novell activex controlls and the gw admin api for this
i prefer perl as scripting language
connect to domain (gwadmin api)
create a users iterator (gwadmin api)
foreach user get name (gwadmin api)
rename nds object to gw name (ldap or activex controlls)
use addexistinguser function and provide old mailboxid and name (gwadmin
api)
ready
perl example
use Win32::OLE;
use Net::LDAP qw(:all);
$ldap=Net::LDAP->new(" SERVER IP ") or die $@;
$error = $ldap->bind (' SUPERUSER DN',password =>' GUESS WHAT :)
',version=>'3') or die "Fehler bei bind: $@\n";
if( $error->error ne Success){
die "Bind error -> " . $error->error . "\n";
$gw=Win32::OLE->new('NovellGroupWareAdmin');
$gw->ConnectByDN(" GROUPWISE DN ");
$objDomain=$gw->ConnectedDomain();
you can use this
$objPostOffices = $objDomain->PostOffices();
$objPostOffice = $objPostOffices->Item(" GROUPWISE PO ");
$objUsers = $objPostOffice->Users();
or that
$objUsers = $gw->Users();
$objUsersIterator = $objUsers->CreateIterator();
while( $objUser = $objUsersIterator->Next() ){
$username = $objUser->{'Name'};
$userdn = $objUser->{'NetID'}
$userdn contains now username.ou.o or something
you must change it to cn=username,ou=ou,o=o
$mesg = $ldap->search(
base=>' $userdnldap',
scope => 'base',
filter => '(objectclass=inetorgperson)'
$entry = $mesg->entry(0);
$entry
$objUsers->AddExistingUser($username, " $userdn ","", "GROUPWISE PO",
" GROUPWISE DOMAIN", $objUser->{MailboxID});

Similar Messages

  • Need to get a listing of all users and their corresponding Exchange 2013 Mailbox Quotas using Powershell

    I will be changing the default quota on mailboxes soon, but there are a number of others who have "customized" quotas and I will need to identify them also.
    Charlie

    The following powershell command can get you the mailboxes that are using "custum "quota:
    Get-Mailbox -Resultsize unlimited | where-object {$_.UseDatabaseQuotaDefaults -eq $false}

  • Query to Find all the Tables and their corresponding columns,dataType in DB

    Hi all,
    I need a query which can give me all the Tables existing in my DB and their corresponding Columns existed for those tables and Datatype for each column .
    Thanks in Advance,
    viajy

    Hi,
    For your user tables you can use USER_TAB_COLUMNS.
    Just give DESC USER_TAB_COLUMNS at your SQL> prompt.
    You will know on that object.
    Regards,
    Sailaja

  • We have multiple devices in our family.  On each iPad/iPhone each user has their own apple id for iMessage, Facetime and icloud, but we all sign in to the same apple id for itunes.  When one of my kids comments on my shared photostream, it shows my name??

    We have multiple devices in our family.  On each iPad/iPhone each user has their own apple id for iMessage, Facetime and icloud, but we all sign in to the same apple id for itunes.  When one of my kids comments on my shared photostream, it shows my name and not theirs as the commenter.  How do I fix that?

    CREATE A NEW USER
    Go to System Preferences --> Create a New User in Users & Groups
    Decide on whether to setup as Admin or Standard User.
    Switch to the New User by logging out under the Apple in the Menu Bar or use Fast User Switching
    Fast User Switching allows other users to leave current applications and windows open. Depending on RAM, you might need to log out rather than use FUS.

  • How to find out list of users and their access on Sharepoint

    Hello Everyone
    How can i find out list of users and what access they have on SharePoint site? I want to create table with list of the users and their access?
    Thanks

    you can get the report using below powershell scripts. first one gives list of users in a site collection level.
    The second link generates the permissions reports for each user.
    http://techtrainingnotes.blogspot.com/2010/12/sharepoint-powershell-script-to-list.html
    https://sp2010userperm.codeplex.com/
    My Blog- http://www.sharepoint-journey.com|
    If a post answers your question, please click Mark As Answer on that post and Vote as Helpful

  • I had renamed my user login name and assumed that there will be no change in the settings and files. When I login with the new profile name everything is gone. How can I get back all my files and settings?

    I had renamed my user login name and assumed that there will be no change in the settings and files. When I login with the new profile name everything is gone. How can I get back all my files and settings? Please help. Thanks.

    You should have asked this before you tried: Changing username or short name- User Account and Short Name- OS X- How to change user account name or home directory name.

  • VC - Report for charateristics with their corresponding BOM components?

    In our company, we define our finished products as configuration material.That means we have
    used the variant configuration(VC) in SAP.
    We have created super BOM for our finished products. And when our sellers create sales order
    in SAP ,they will choose the configuration,and after they choose that,the BOM for production
    will be formed.
    For example,just like computer as finished products ,customer may choose different
    configurations. For example ,hard disk ,customer may choose 120G or 200G.
    In SAP ,to realise that ,we will create one charateristic as HARD DISK, and it has two
    characteristic values:120G and 200G.
    And in our super BOM for computer ,we will write object dependency(OD) for two components:
    one is 120G hard disk material,we may write :TZ_HARD_DISK = '120G' ; the other is 200G hard disk material ,we may write: TZ_HARD_DISK = '200G". That means when customer create a order and choose 120G hard disk ,the 120G hard disk material will be a component in the BOM,and the 200G hard disk wiil not be a component in the BOM.
    My question is that there is correspondence relationship between charateristic and BOM component(object dependency as link), can we get a report or a list to show all the charateristic with their corresponding BOM components?
    By use CT11(find characteristics in object dependency) and CU04 (find object dependency with BOM component),we could find BOM component once a time.
    So there is a report to show all the charateristic with their corresponding BOM components?
    By ABAP development? Or there is standard report? Or ther is third party tools?
    Thanks for any reply!

    Are there any other experts who are reach in the Variant Configuration of SAP know?
    If there is a report to show all the charateristic of Variant Configuration with their corresponding BOM components?
    We are looking for the standard report.
    By use CT11(find characteristics in object dependency) and CU04 (find object dependency with BOM component),we could find BOM component once a time.
    Are there another TCODE or programme like CT11 but can find many characteristics in object dependency) once a time?By now ,use CT11, we only can find one characteristics in object dependency once a time?
    Only by ABAP development? Or there is standard report? Or ther is third party tools?
    Edited by: Fei Liu on Mar 17, 2009 7:19 AM

  • Is it possible to re-import tracks to their corresponding playlists?

    as opposed to just "the Library"?
    There has got to be a reason for exporting and importing playlist .xml files.
    Why is everyone telling me that iTunes is incapable of re-directing tracks to their corresponding playlists? It makes no sense to have a playlist backup if it cannot really be used!

    1) Are what I mentioned before of any use? (smart playlists, special tags, or scripts)
    Yes - nearly all my playlists are smart playlists based on the Grouping field, e.g.:
    "Alice's Tracks" is "Grouping contains Alice" + "Kind contains audio"
    "Bob's Videos" is "Grouping contains Bob" + "Kind does not contain audio"
    Tracks that both Alice & Bob want on their iPods have the grouping set to "Alice/Bob"
    etc.
    I use this method to manage the content of our family's four iPods, each getting a different selection to suit their tastes and the capacity of their iPod. Because the grouping field is stored in file tags (for audio files anyway) playlist membership is automatically preserved when I delete from iTunes, reorganise & re-import.
    tt2

  • List of users and their licence allocation

    I am aware of accessing Admin>> License>> License allocation, one by on - but would like to have access to be able to llist users and their licence allocation.

    hello Liza,
    you may see this thread. this may help you
    License Allocation
    hope it helps..
    Fidel

  • List of users and their decimal notation settings in SAP system

    Hi all, i'm looking to get my hands on a list of all users in our SAP system and their respective decimal notation settings? I know that these can be mass changed using SU10 however I am unable to determine how to view a list of users and their settings.
    Thanks,
    James

    Hi James,
    You can find many useful reports, in SUIM transaction to see user details, but not decimal notation field. I don't know a report to show decimal notations, but as a workaround, in order to see the decimal notation, you can check "USR01-DCPFM" by using "SE16".
    Best regards,
    Orkun Gedik

  • Logged-in user info doesn't display after the user updates their info

    I created 2 pages. Page 1 has a recordset that displays only the users username and password, I did a filter on this recordset as username = session var = MM_Username. when they click update, which is just a link to page 2, they go to page 2 which has a recordset that filters their user info the same way and allows them to update their username and password. I used an update behavior on this page as well. So, when the user updates their info it DOES change the database info and works great.
    The problem: When the user goes back to page 1 to see their updated username and password that they just updated, it is BLANK. no info displays on screen, even when I refresh the page. it's if the MM_Username var is not refreshing while logged-in. Because when the user logs out and logs back in, it DOES display new username and password on page 1.
    Now it DOES work when I take the filter off of page 1's recordset, but this won't do me any good b/c the user should of course only see their info.
    I am running DW CS3, php, and mysql.
    Please Help! thanks.

    PAGE 1
    <?php
    if (!function_exists("GetSQLValueString")) {
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", 
    $theNotDefinedValue = "")
       $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : 
    $theValue;
       $theValue = function_exists("mysql_real_escape_string") ? 
    mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
       switch ($theType) {
         case "text":
           $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
           break;
         case "long":
         case "int":
           $theValue = ($theValue != "") ? intval($theValue) : "NULL";
           break;
         case "double":
           $theValue = ($theValue != "") ? "'" . doubleval($theValue) . 
    "'" : "NULL";
           break;
         case "date":
           $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
           break;
         case "defined":
           $theValue = ($theValue != "") ? $theDefinedValue : 
    $theNotDefinedValue;
           break;
       return $theValue;
    $colname_rsUpdateUser = "-1";
    if (isset($_SESSION['MM_Username'])) {
       $colname_rsUpdateUser = $_SESSION['MM_Username'];
    mysql_select_db($database_kh_space, $kh_space);
    $query_rsUpdateUser = sprintf("SELECT username, parentEmail FROM users 
    WHERE username = %s", GetSQLValueString($colname_rsUpdateUser, "text"));
    $rsUpdateUser = mysql_query($query_rsUpdateUser, $kh_space) or 
    die(mysql_error());
    $row_rsUpdateUser = mysql_fetch_assoc($rsUpdateUser);
    $totalRows_rsUpdateUser = mysql_num_rows($rsUpdateUser);
    ?>
    PAGE 2
    <?php
    if (!function_exists("GetSQLValueString")) {
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", 
    $theNotDefinedValue = "")
       $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : 
    $theValue;
       $theValue = function_exists("mysql_real_escape_string") ? 
    mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
       switch ($theType) {
         case "text":
           $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
           break;
         case "long":
         case "int":
           $theValue = ($theValue != "") ? intval($theValue) : "NULL";
           break;
         case "double":
           $theValue = ($theValue != "") ? "'" . doubleval($theValue) . 
    "'" : "NULL";
           break;
         case "date":
           $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
           break;
         case "defined":
           $theValue = ($theValue != "") ? $theDefinedValue : 
    $theNotDefinedValue;
           break;
       return $theValue;
    $editFormAction = $_SERVER['PHP_SELF'];
    if (isset($_SERVER['QUERY_STRING'])) {
       $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
    if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) {
       $updateSQL = sprintf("UPDATE users SET username=%s, password=%s 
    WHERE userId=%s",
                            GetSQLValueString($_POST['username'], "text"),
                            GetSQLValueString($_POST['password'], "text"),
                            GetSQLValueString($_POST['userId'], "int"));
       mysql_select_db($database_kh_space, $kh_space);
       $Result1 = mysql_query($updateSQL, $kh_space) or die(mysql_error());
       $updateGoTo = "confirmation.php";
       if (isset($_SERVER['QUERY_STRING'])) {
         $updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
         $updateGoTo .= $_SERVER['QUERY_STRING'];
       header(sprintf("Location: %s", $updateGoTo));
    $colname_rsUpdateUser = "-1";
    if (isset($_SESSION['MM_Username'])) {
       $colname_rsUpdateUser = $_SESSION['MM_Username'];
    mysql_select_db($database_kh_space, $kh_space);
    $query_rsUpdateUser = sprintf("SELECT userId, username, password, 
    parentEmail FROM users WHERE username = %s", 
    GetSQLValueString($colname_rsUpdateUser, "text"));
    $rsUpdateUser = mysql_query($query_rsUpdateUser, $kh_space) or 
    die(mysql_error());
    $row_rsUpdateUser = mysql_fetch_assoc($rsUpdateUser);
    $totalRows_rsUpdateUser = mysql_num_rows($rsUpdateUser);
    ?>

  • Users changing their own passwords

    we have set up an Open Directory and are going through the steps to deploy. One issue we have yet to find an elegant solution to is user's passwords and changing them on a regular basis. Many of the contracts we deal with stipulate user passwords are to be changed every 45 days.
    Now - there is no way we want our users monkeying around in Workgroup Manger changing their own passwords - and the last thing we on the IT team want to do is perform data entry tasks every couple of months to change everyone's password. Plus - for security reasons - this is a terrible idea.
    so - is there an easy way to have a user update their password without going through Workgroup Manager?
    thanks

    And you can set the password lifetime and reset and character-content policies in Server Admin > Open Directory > Policies > Passwords, if you've not already found that set of knobs.
    I'd also suggest looking to two-factor or certificate-based approaches, if you're having requirements around password resets.

  • How to allow user print their draft anwsers before sending it as final ?

    How to allow user print their draft anwsers before sending it as final in a form central questionnaire ?

    Hey MTdev,
    Panel close? events cannot be triggered on a VI being viewed or controlled remotely. Some more information on that can be found in the help here:http://zone.ni.com/reference/en-XX/help/371361E-01/lvprop/vi_panel_closeq/.  My suggestion would be to set the Title Bar on the front panel of your remote VI to not be visible so that their only option for closing the window is to click the logout button.  Are you using Remote Front Panels(http://zone.ni.com/devzone/cda/tut/p/id/3277) to do this instrument control?  Using remote front panels allows you to manage a lot of the multiple people accesssing at the same-time type issues so it may be something to look into if you are not already using this method.  
    Regards,
    Kevin
    Product Support Engineer
    National Instruments

  • Getting list of all users and their group memberships from Active Directory

    Hi,
    I want to retrieve a list of all the users and their group memberships through JNDI from Active Directory. I am using the following code to achieve this:
    ==================
    import javax.naming.*;
    import java.util.Hashtable;
    import javax.naming.directory.*;
    public class GetUsersGroups{
         public static void main(String[] args){
              String[] attributeNames = {"memberOf"};
              //create an initial directory context
              Hashtable env = new Hashtable();
              env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
              env.put(Context.PROVIDER_URL, "ldap://172.19.1.32:389/");
              env.put(Context.SECURITY_AUTHENTICATION, "simple");
              env.put(Context.SECURITY_PRINCIPAL, "[email protected]");
              env.put(Context.SECURITY_CREDENTIALS, "p8admin");
              try {
                   // Create the initial directory context
                   DirContext ctx = new InitialDirContext(env);     
                   //get all the users list and their group memberships
                   NamingEnumeration contentsEnum = ctx.list("CN=Users,DC=filenetp8,DC=com");
                   while (contentsEnum.hasMore()){
                        NameClassPair ncp = (NameClassPair) contentsEnum.next();
                        String userName = ncp.getName();
                        System.out.println("User: "+userName);
                        try{
                             System.out.println("am here....1");
                             Attributes attrs = ctx.getAttributes(userName, attributeNames); // only asked for one attribute so only one should be returned
                             System.out.println("am here....2");
                             Attribute groupsAttribute = attrs.get(attributeNames[0]); // memberOf
                             System.out.println("-----"+groupsAttribute.size());
                             if (groupsAttribute != null){
                                  // memberOf is a multi valued attribute
                                  for (int i=0; i<groupsAttribute.size(); i++){
                                  // print out each group that user belongs to
                                  System.out.println("MemberOf: "+groupsAttribute.get(i));
                        }catch(NamingException ne){
                        // ignore for now
                   System.err.println("Problem encountered....0000:" + ne);
                   //get all the groups list
              } catch (NamingException e) {
              System.err.println("Problem encountered 1111:" + e);
    =================
    The following exception gets thrown at every user entry:
    User: CN=Administrator
    am here....1
    Problem encountered....0000:javax.naming.NamingException: [LDAP: error code 1 -
    000020D6: SvcErr: DSID-03100690, problem 5012 (DIR_ERROR), data 0
    ]; remaining name 'CN=Administrator'
    I think it gets thrown at this line in the code:
    Attributes attrs = ctx.getAttributes(userName, attributeNames);
    Any idea how to overcome this and where am I wrong?
    Thanks in advance,
    Regards.

    In this sentence:
    Attributes attrs = ctx.getAttributes(userName, attributeNames); // only asked for one attribute so only one should
    It seems Ok when I add "CN=Users,DC=filenetp8,DC=com" after userName, just as
    userName + ",CN=Users,DC=filenetp8,DC=com"
    But I still have some problem with it.
    Hope it will be useful for you.

  • Query Builder List of Report Names & their corresponding Folder Names

    HI there,
    I have in excess of 6000 reports deployed in my Crystal system.
    I need to pull 2 sets of data:
    1. I need a list of all report names & their corresponding folder names
    2. I need a list of all report names & their corresponding folder names where:
           a) The destination for the schedule is set to Email
           b) The 'to" field contains any email addresses with the value @fcl.internal in them
    Grateful for any assistance you can provide.
    Many thanks....Corinne

    This is a challenge that will require multiple queries or an application using the the SDK.
    To get the folder where a report is located, you'll need to query CI_INFOOBJECTS where SI_ID = the PARENT_ID value in the report.  To get the entire path, you'll have to "walk" up the PARENT_ID values until the value is 0, which is the root folder.
    I'm not sure whether you can get to the SchedulingInfo properties in the report to filter based on your second requirement - I'm working on an application to pull this information in my "copious" spare time, but I haven't had the opportunity to get into that part of the application yet.
    For some samples of code using the .NET SDK to do various thing, see my website at [www.dellstinnett.com/sample_code.html].  Code for walking the folder path is in the BOECommonInfo assembly.
    -Dell
    Edited by: Dell Stinnett on Nov 29, 2010 4:49 PM
    Edited by: Dell Stinnett on Nov 29, 2010 4:50 PM

Maybe you are looking for

  • Run Time Error in Account Determination

    Dear Friends In my system using std one for account det then it posting to FI. Now I created my own Table, Access Seq, Condition Type and Procedures after all assignment when I assign my procedures to F2 .     Then I done sales cycle upto billing, bu

  • No address bar up top to enter website address, also I don't see File, bookmarks, etc tabs

    My wife's laptop (Window XP) does not show any website address bar up top and the tabs for File, Edit, Bookmarks, etc are missing. I can't figure out how to get them to show up. I tried downloading the most recent version of Firefox, but it did not w

  • Unicast configuration in weblogic 10.3

    Hi Friends, For unicast conguration, do we have to enable Outbound Enabled and Tunneling Enabled in network channels.

  • How do I insert 3 seconds of black screen before my movie starts?

    I tried command-A to highlight all clips and audio in hopes I could just shift over to the right, but it won't let me.  Any help would be appreciated!

  • Shutting down Forte!!!!

    Hi, we have a forte server on Windows NT with Windows 95 clients. We are running forte 3.0.D.0 At the end of the day, when we have to shut down the development environment on the client, the ftexec is still running on the client. how do we shut forte