+3  A: 

Hi! In order to do this you will have to write your own Profile Provider and then modify the user class to include these profile properties which you can then access.

Have a look at page Section 13.3 of the RIA Services Overview document and let me know if you need any help.

We are just in the middle of implementing a RIA Services application and have written our own custom membership provide and profile provider so let me know if you need a hand.

Michal
Hi Michal!I've had so much trouble doing this. I don't quite understand what exactly it is I need to do? Do I need to use a database to store the user credentials? I feel like i've totally missed something, all of the tutorials are so vague. I would really appreciate some help and samples etc. I've just finished writing an entire RIA app thats got some awesome features but I can't move it to the cloud without authentication :-(
Goober
Yeah we found it a bit difficult as well.In point summary we did the following:1) Implemented a membership provider by overriding the MembershipProvider Class2) Implemented a Profile Provider by overriding the ProfileProvider class3) Implemented a Role Provider.4) Added all of that to the web.config (very important) of the silverlight appKeep in mind we are authenticating against AD but not using the ASP.NET membership or profile providers.Drop me an email and I can provide some samples.Cheers
Michal
A: 

Hei Michal can you please show an example os your implementation? Thanks.

A: 

Michal,

We are interested in finding the (AD)user profile as well, Could you please provide with examples?

Premk
A: 

Here is how I have hacked it on the AuthenticationService provided by BusinessApplicationTemplate.

[EnableClientAccess] public class AuthenticationService : AuthenticationBase {

    protected override User  GetAuthenticatedUser(System.Security.Principal.IPrincipal principal)
    {
        User user = base.GetAuthenticatedUser(principal);
        Configuration config = WebConfigurationManager.OpenWebConfiguration("~");
        SystemWebSectionGroup grp = (SystemWebSectionGroup)config.GetSectionGroup("system.web");
        AuthenticationSection auth = grp.Authentication;
        if (auth.Mode == AuthenticationMode.Forms)
        {
        }
        else if (auth.Mode == AuthenticationMode.Windows)
        {
            string[] a = user.Name.Split('\\');
            System.DirectoryServices.DirectoryEntry ADEntry = new System.DirectoryServices.DirectoryEntry("WinNT://" + a[0] + "/" + a[1]);
            string Name = ADEntry.Properties["FullName"].Value.ToString();
            user.Name = Name;
        }
        return user;
    }
}
Premk
+1  A: 

Hey everybody, there's a new article up on MSDN, I'm working through it now.

http://msdn.microsoft.com/en-us/library/ee707353(VS.91).aspx

Eric