Update AD groups via resourceObjectUpdate?

Hello idm experts,
I need to update to update an object in AD - move in into a different container, update some attributes and add AD security groups.
Is that possible to do all at once via updateResourceObject com.waveset.provision.WorkflowServices call?
Trying to do it - rename (move to different OU) is correct, modifying attributes is correct. Group membership gets completely wiped out.
Here is the user object I'm passing:
<Object>
<Attribute name='user'>
<Object>
<Attribute name='attributes'>
<Object>
<Attribute name='description' value='xxxx111'/>
<Attribute name='groups'>
<List>
<String>CN=na_approver,OU=FWD Groups,OU=Ldap Data,OU=INT,DC=msqa,DC=qa,DC=ms,DC=com</String>
<String>CN=NA_BranchAdmin1,OU=Common Groups,OU=ISG,OU=INT,DC=msqa,DC=qa,DC=ms,DC=com</String>
</List>
</Attribute>
<Attribute name='objectGUID' value='106d443e62585a469d0ddf6dfdbaacfe'/>
<Attribute name='sAMAccountName' value='xxxxxtest09'/>
<Attribute name='ws_newAccountId' value='cn=paveltest0909,ou=gwm,ou=exchange,ou=isg,ou=int,dc=msqa,dc=qa,dc=ms,dc=com'/>
</Object>
</Attribute>
<Attribute name='objectId' value='CN=xxxxxtest0909,OU=GWM,OU=Exchange,OU=ISG,OU=INT,DC=msqa,DC=qa,DC=ms,DC=com'/>
<Attribute name='objectType' value='User'/>
<Attribute name='resourceId' value='#ID#Resource:AD'/>
</Object>
</Attribute>
</Object>
And here is the call:
<Action name='Update User' application='com.waveset.provision.WorkflowServices'>
<Argument name='op' value='updateResourceObject'/>
<Argument name='objectId' value='$(iden)'/>
<Argument name='objectType' value='User'/>
<Argument name='object' value='$(ldapObject.user)'/>
<Argument name='resourceId' value='#ID#Resource:AD'/>
<Argument name='action' value='update'/>
<Return from='applicationError' to='applicationError'/>
</Action>
Update seems to be OK, the object is moved, attributes are updated, but group membership is wiped out.
WavesetResult contains this:
<WavesetResult>
<ResultItem type='result' status='UI_MSG_SEVERITY_OK'>
<WavesetResult>
<ResultItem type='ACCOUNT_RENAMED'>
<String>CN=xxxxxtest0909,OU=GWM,OU=Exchange,OU=ISG,OU=INT,DC=msqa,DC=qa,DC=ms,DC=com</String>
</ResultItem>
<ResultItem type='message' status='UI_MSG_SEVERITY_OK'>
<Message id='WF_RESOURCE_OBJECT_UPDATED'>
<String>WF_RESOURCE_OBJECT_TYPE_USER</String>
<String></String>
</Message>
</ResultItem>
</WavesetResult>
</ResultItem>
</WavesetResult>
What happened with group membership? Is there something I'm missing in object parameters or WorkflowServices parameters?

You can "nest" an AD group in a SharePoint group and that will work just fine. What does not work is if you add users to an AD group, then nest that group in another AD group, and apply that second AD group to SharePoint. SharePoint is unable to crack open
the nested group to parse the users.
What do you mean by Site Collection Web Policy? Policies are applied at the Web Application level (in Central Administration).
Trevor Seward
Follow or contact me at...
&nbsp&nbsp
This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

Similar Messages

  • Is update not approved for a specific group via powershell.

    My apologies in advance for asking a similar question to the one I asked two months ago,
    is update approved for specific group via powershell? I thought I had this covered, but as I've found time to continue to work on this project I see that it does not.
    I have a script that iterates through updates and if the release date is older than 30 days and they have not already been “Approved for Install” or “Approved for Removal” for a specific group it approves them. I am currently faced with the dilemma that
    when an update is set to “Not Approved” for the specific group I’m working on it does not come across in my group’s approvals and there for I cannot detect its current state to know if I should approve it. In other words, I don’t want to approve an update
    that I set to not approved for a specific group.
    I am currently achieving all this so far by connecting to my WSUS server and getting any and all updates via $all = $wsus.GetUpdates(). I Then get my group’s approved updates via $groupApproved = $wsus.GetUpdateApprovals($GroupScope) where ApprovedStates
    = "Any" and ApprovedComputerTargetGroups.Add($current_wsus_group). While iterating through $all I grab updates that are older than 30 days and check to see if the updateID exists in my $groupApproved. If it does not, I approve the update. Like I
    said before, an explicitly unapproved update for my group does not show up in my $groupApproved. I understand it’s because of my GetUpdateApprovals($GroupScope) being just that and only getting approved for install or uninstall, but even when I try to simply
    GetUpdates($GroupScope) I am still not returned explicitly unapproved updates. Below is a screen shot of what I mean by explicitly setting an update to unapproved for a group. I’ve read up on
    ApprovedStates and possible enumerated values and it does include "NotApproved" defined as "Includes updates that have not been approved or declined.".
    Hope all that makes sense, thanks for the help.

    So, I've decided to go about this a different way. Rather than getting all updates and comparing them to approvals via a scope of updates for my specific group (which includes all actions but Not Approved), I am going to look at specific approvals for each
    update and see if there is a match for my group. A simplfied version of this is below. 
    $AnyAllUpdates = $wsus.GetUpdates()
    foreach ($udpate in $AnyAllUpdates)
    if ($update IsNOTDeclined IsNOTSuperseded LegacyNameNOTIA64 CreationDateLTDATE yada yada yada)
    # get the approvals for this udpate as they relate to my group
    $uApprovals = $update.GetUpdateApprovals() | ?{$_.ComputerTargetGroupId -eq $wsus_group.Id}
    if ($uApprovals)
    if ($uApprovals.action -eq "Install")
    # do nothing, the udpate was approved for install
    elseif ($uApprovals.action -eq "Uninstall")
    # do nothing, the update was approved for uninstall
    elseif ($uApprovals.action -eq "NotApproved")
    # do nothing, the udpate was not approved for install
    else
    # since there was no specific action then it must be an inherited not approved from teh parent group
    # approve the update!

  • Update age group picklist based on value entered in date of birth

    Hi Gurus,
    Have a requirement where in user would enter the date of birth on a contact record and would like to populate another custom field called age group at the time of creating a new record.
    The condition is some what like
    Age
    1 – 20 Teens
    21-40 Young Adults
    41-60 Adults
    60 – 100 Seniors
    I have tried using the age field but problem is that age is populated only when the record is saved.
    Update the age group via workflow works fine but the saved record has to be modified before triggering the workflow. we would like to avoid the additional step of modifying the record
    Is there any option to calculate age based on the value entered for date of birth - something like DOB Year - current year before saving a record or via post default without using workflows.
    Thanks in advance,
    Arun

    Hi
    The answer is yes, using the post default functionlaity.
    take a look in the folowign example:
    IIf(ToChar(Timestamp(),'DD/MM/YYYY')- [<DateofBirth>] < 20,'20','30')
    You will need to make something like that, but replace the '30' with another IIf expression, and so on for the next interval.
    note that date of birth should be between suqare brackets [  ] (it is shown here with underline for some reason...)
    Good luck
    Guy
    Edited by: Shinshan on 08:45 30/12/2009
    Edited by: Shinshan on 08:46 30/12/2009
    Edited by: Shinshan on 08:47 30/12/2009
    Edited by: Shinshan on 08:47 30/12/2009

  • RE: DataField, update underlying data via TOOL,Express

    John,
    does it work if you mix the "CopyfromClipboard" method with the "PlaceValueinDisplayedField" ?
    If this is not the correct solution to you problem, could you please specify "where" it does not work ?
    Thanks a lot indeed.
    Best regards
    /Stefano
    Stefano POGLIANI Fort&eacute; Software Consultant
    E-Mail : [email protected] Tel : +33.0)450201025
    Fax : +33.(0)450200257 Mobile : +33.(6)08431221
    Visit the Fort&eacute; Web Site : http://www.forte.com/
    Ducunt fata volentem, nolentem trahunt....
    -----Original Message-----
    From: John Hodgson [SMTP:[email protected]]
    Sent: Wednesday, July 02, 1997 8:39 PM
    To: [email protected]
    Subject: DataField, update underlying data via TOOL, Express
    In TOOL code we PasteText() into a DataField, but the underlying data
    object does not get updated until the user interacts with the GUI.
    That causes problems if we need to use the underlying data object's
    value immediately after the paste. How can we:
    force an update of the underlying data object and
    ensure that the update goes through before our method call returns,
    i.e., ensure that if the update is via Forte events, those events
    are handled before returning.
    The context is a calendar lookup button that pastes into an adjoining
    DataField.
    John Hodgson |Descartes Systems Group Inc.|[email protected]
    Systems Engineer|120 Randall Drive |http://www.descartes.com
    |Waterloo, Ontario |Tel.: 519-746-8110 x250
    |CANADA N2V 1C6 |Fax: 519-747-0082

    Well, I think I have answered my own question, but I will leave it here in case anyone else has the same problem. 
    So, as far as I have been able to track down, it all went wrong when I was running through the connection wizard. 
    Under the section titled "Creating the Data Source" is describes how to find your database file and create the appropriate connection string. However, on my version of VS Express 2010 . It offered me a prompts , saying something like, "would you like to
    move this database file into the application directory and change the connection string" this sounded very sensible to me, so I said yes.
    All proceeded accordingly. And the database file now appeared in the solution explorer. 
    The app config file said that the connection string was 
    Data Source=|DataDirectory|\Database1.sdf"
    I presumed this would be interpreted correctly by the rest of the app, as it was generated by VS.
    But it didn't, what I cannot understand is how no error was generated. And data seemed to pull
    into the bound controls. 
    But I have been testing it for a while now. and it seems that if I manually override the config file with the actual directory where the file exists , then there is not a problem. Data is retained in the file 
    This is more of a VB.net question, but I couldn't find it in the drop down. I will try and move it there now
    Thanks guys for your patience. 
    p.s. RSingh , the code I posted above did come from the SaveItem_Click event
    handler

  • Update key mapping via web service

    Hi ,
    I have a question about edit key mapping. The problem is that we create vendors in MDM and syndicate them to different ERP systems. To decide which system a new vendor/changes must be send to, I need the Edit Key Mapping, but the users do not want to enter this information manually and I do not see how I can create key mapping automatically.
    We are working on a new solution where vendors are entered in sharepoint and updated in MDM via web services. I would like to know if one of you know if key mapping can be maintained via a web service.
    Kind regards
    Jonna

    Hello,
    You may use the document,
    [MDM PI via Web Service Key Mapping|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/e0812356-e62f-2c10-76aa-9a02d038ba81]
    Hope this helps your scenario
    Regards,
    Abhishek

  • Update purchasing group in scheduling agreements

    Hi gurus,
    I'm trying to update purchasing group field in scheduling agreements, which are time-independent (EKKO-STAKO = ' ').
    In my environment, I'm not authorized to use CALL TRANSACTION statement.
    If possible, I'd need a way that works both in 4.6c and 6.0 versions.
    I have tried several options, but none works:
    -BAPI_SAG_CHANGE: "Scheduling agreements with time-independent conditions are not supported" (OSS note 1046794) (Also, this is not available in 4.6c)
    -BAPI_SCHEDULE_MAINTAIN: "Scheduling agreements with time-independent conditions are not supported" (OSS note 1046794) (Also, this is not available in 4.6c)
    -BAPI_AGREEMENT_MAINTAIN: Does not have the possibility to change field 'purchasing group'. (Moreover, it internally performs a CALL TRANSACTION).
    -ME_UPDATE_AGREEMENT_PO: I've been not able to change field 'purchasing group'.
    I'd be grateful about any hint. Thanks in advance!

    In case it is useful for anyone else, I have solved the problem using:
    CALL FUNCTION 'ME_UPDATE_DOCUMENT'
    Thanks anyway!

  • HT4623 I tried updating to iOS6 via itunes bc my storage space was pass limit and now my phone is telling me it's in recovery mode and I need to restore it. I didn't back it up. How do I take it out of recovery mode and keep the information on my phone?

    I tried updating to iOS6 via itunes bc my storage space was pass limit and now my phone is telling me it's in recovery mode and I need to restore it. I didn't back it up. How do I take it out of recovery mode and keep the information on my phone?

    You cannot.  If it is in recovery mode, the data is already gone.
    Did you fail to make sure everything was on your computer before updating?

  • BAPI_ACC_INVOICE_RECEIPT_POST - Updating Customer Group

    Does anyone know how i can update 'Customer Group' in the profit segment part of a document using the above BAPI.
    Can it be done ?
    Thanks

    hi
    I'm searching a BAPI for F-53.
    then i found your thread.
    but i don't know what data to be filled in it.
    can u please provide me some sample data that needs to be filled in this bapi.
    awaiting your reply.
    Regards,
    Suman.

  • How do I send pictures from iphoto to a group via email instead of to just one individual? I can't type in more than one name or send the pictures to a group.

    How do I send pictures from iphoto to a group via email instead of to just one individual? I can't type in more than one name or send the pictures to a group.

    I had a similar problem in that my wife's iphone 5 could not send pics with imessage.  Had to set the settings to default to SMS or whatever.  After laboring many hours on the web I coincidentally was on the phone with the internet people to question my internet speed.  They changed the router channel, which is something that I am capable of doing myself.  After that, the pics go over imessage.  My own Iphone didn't have the problem.  We are both latest IOS 7.0.6.

  • EPM 11.1.2.1 add a MSAD user to a HSS native group via MaxL command

    Hi there
    I want to take over MSAD user as EPM (Essbase) user in a HSS native group via MaxL command:
    This works fine as long as the user is already in at least one other group (with at least server access).
    If I want to do same for a "new" user it fails.
    Is there any trick to also make it work for this case?
    see here:
    alter user 'mynewuser' add to group 'ALL_SERVER_ACCESS_ ESS1';
    ERROR - 1051012 - User mynewuser does not exist.
    or even
    alter user 'mynewuser@domain' add to group 'ALL_SERVER_ACCESS_ ESS1';
    ERROR - 1051012 - User mynewuser@domain does not exist.
    Thanks in advance!
    Regards
    Andre

    You will probably need issue a create first for example
    create or replace user 'essuser' type external;
    alter user 'essuser' add to group essgroup;
    or
    create or replace user 'essuser@LDAPNAME' type external;
    alter user 'essuser@LDAPNAME' add to group essgroup;
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • In material master standerd cost value  not updating in group currency

    hi gurus
    In material master accounting 1 tab, under price and values table. standerd price is not updating in group currency.
    Can you sugest me how to resolve this issue
    this hapend only for one material
    can you sugest me to resolve this
    regards
    gangadhar

    Hi,
    As per My Knowledge,Wht ever currency is assigned as company code currency , tht will only be updated in Material Master as Per standard.
    Currect me if Iam worng.
    Thanks
    Goutam

  • In material master standerd price field not updating in group currency

    In material master accounting 1 tab, under price and values  table. standerd price is not updating in group currency.
    Can you sugest me how to resolve this issue

    Hi,
    As per My Knowledge,Wht ever currency is assigned as company code currency , tht will only be updated in Material Master as Per standard.
    Thanks
    Goutam

  • HT201210 i cant update my iphone via itune. ERROR message 1015. have updated everything, still didn't work out

    i cant update my iphone via itune. ERROR message 1015. have updated and done all the trouble shooting, still didn't work out. I tried, reinstalling everything, nothing happens, this is suck! can't use my iphone!

    http://support.apple.com/kb/TS3694#error1

  • I have updated iOS7 today via iTunes as I was not able to update it directly in the iPhone. After the update I restored the back up and now the iPhone is not getting started. Please advice?

    I have updated iOS7 today via iTunes as I was not able to update it directly in the iPhone. After the update I restored the back up and now the iPhone is not getting started. Please advice?

    That error message suggest you have a permissions issue. Make sure you have full read/write privileges for the Drive/ Folder location that you are copying the files to. 

  • Updating a table via a gui program

    i am trying to update a record via the UPDATE function. My program has a show all button that brings in all the records. When i make a change in the record and click Update. I get the error: Syntax error in string in query expression ''00000' the zeroes represent an updated zipcode. Here is my source code for the update function:
    if(e.getActionCommand().equals("Update"))
    String url = "jdbc:odbc:coffee";
    String driver= "sun.jdbc.odbc.JdbcOdbcDriver";
    Connection con= null;
    Statement stmt =null;
    //PreparedStatement stmt = null;
    ResultSet my_result= null;
    /* String query = "Update CoffeeSuppliers set " +
    "Name='" + comp_Name.getText() +
    "', Address='" + comp_Addr.getText() +
    "', City ='" + comp_City.getText() +
    "', State='" + comp_State.getText() +
    "', ZipCode='" comp_zipcode.getText()
    "' WHERE ID=" + comp_ID.getText();
    String query= "Update CoffeeSuppliers set " +
    "ID='" + comp_ID.getText() +
    "', Name='" + comp_Name.getText() +
    "', Address='" + comp_Addr.getText() +
    "', City='" + comp_City.getText() +
    "', State='" + comp_State.getText() +
    "', ZipCode='" + comp_zipcode.getText();
    try
    Class.forName(driver);
    catch(java.lang.ClassNotFoundException exception)
    System.err.print("ClassNotFoundException: ");
    System.err.println(exception.getMessage());
    try
    con = DriverManager.getConnection(url,"app","app");
    stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    my_result= stmt.executeQuery(query);
    stmt.executeUpdate(query);
    while(my_result.next())
    System.out.println("am i in the while loop");
    my_result.updateString(1,comp_ID.getText());
    my_result.updateString(2,comp_Name.getText());
    my_result.updateString(3,comp_Addr.getText());
    my_result.updateString(4,comp_City.getText());
    my_result.updateString(5,comp_State.getText());
    my_result.updateString(6,comp_zipcode.getText());
    my_result.updateRow();
    stmt.close();
    con.close();
    catch(SQLException sqlex)
    System.err.println("ERROR: " + sqlex.getMessage());
    } //end of the if statement
    Any feedback will be great.
    thanks

    String query= "Update CoffeeSuppliers set " +
    "ID='" + comp_ID.getText() +
    "', Name='" + comp_Name.getText() +
    "', Address='" + comp_Addr.getText() +
    "', City='" + comp_City.getText() +
    "', State='" + comp_State.getText() +
    "', ZipCode='" + comp_zipcode.getText() + "'";I think that it is as simple as the fact that you diddn't close the zipcode string literal being passed to the SQL interpreter. Add the closing ' to the query
    Hope this helps,
    Bamkin

Maybe you are looking for

  • TS1369 Windows 8 & ipod nano

    Does anyone have a fix for newer ipod nano's syncing up to Windows 8? I went thru the list on the apple web site but still nothing.

  • ORACLE EXPRESS: build a page with multiple forms linked to one table

    hi, im using oravle application express. APEX i would like to build a page with multiple forms linked to one table (orders) , the page has 4 from  each one with different order_id number (depending on filtering),  and if the order is prepared click y

  • Database Adapter Polling 100 large size messages at one time.

    We have a BPEL process which polls a header & detail table on a Oracle DB. Typically we are having a scenario that we have around 1000 detail line items for each header.In the night when we start the process we have around 100 such headers each havin

  • Can't publish changes

    I use iWeb 1.1.2 and Safari 2.0.4. I have a small webpage with three tabbed pages. I made some changes in one page, to add hyperlinks and those published perfectly. However, despite making similar changes to another page and repeatedly trying to publ

  • Cubemaping help on adobe site

    All syntax regarding cubemapping in the help files appears to be faulty.... I only could get this: member(whichCastmember).newTexture(newTextureName ,#cubemapTexture, cubeEdgeLength, sourceRef1, sourceRef2, sourceRef3, sourceRef4, sourceRef5, sourceR