Forum

sharepoint 2010 ile...
 
Bildirimler
Hepsini Temizle

sharepoint 2010 ile list ekledıgım(kisi veya grup) kişiyi otomatik olarak site permissiona eklemek nasıl oluyor??

8 Yazılar
3 Üyeler
0 Reactions
539 Görüntüleme
(@alicengez)
Gönderiler: 32
Trusted Member
Konu başlatıcı
 

mrb arkadaslar bi tane custom list olusturdm ve bu liste de kisi yada grup ekle coloum var bn burya ekledıgım ınsanların otomatik olarak site permission a da eklemek ıstıyorum.yardımlarını beklıyorum... iyi calısmalar..

 
Gönderildi : 08/08/2012 00:25

(@YavuzKIVANC)
Gönderiler: 32
Eminent Member
 

Merhaba,


Bunu workflow ile yapabilirsin, ancak ne gerek var listeye ekleyeceğine permissiona ekle.

 
Gönderildi : 08/08/2012 20:03

(@alicengez)
Gönderiler: 32
Trusted Member
Konu başlatıcı
 

Merhaba

Benim bi tane custom list im var buraya her eleman ekledıgımde list in title ini alıp bi tane site olusturuyor.ben olusturulan sitelerin site permission ına yine aynı liste deki secdigim kişilerin eklenmesini istiyorum.bunu hangi workflow ile yapabilirim aradim ama bulamadım buna benzer bise yardımcı olursanız cok sevinirim

iyi calısmalr

 
Gönderildi : 08/08/2012 20:21

(@alicengez)
Gönderiler: 32
Trusted Member
Konu başlatıcı
 

Merhaba,

Bunu workflow ile yapabilirsin, ancak ne gerek var listeye ekleyeceğine permissiona ekle.

hocam simdi replace these permission of item in this list actionundan bahsediosan simdi bununla bn listedeki coloumn lara permission verebliorm yanı sole lıstede coloumn da kişi grup eklenen yerde ali varsa ali bu liste elemanına erisiyor yoksa erisemiyor.

ama sonucda bn bi site olusturuyorum ve olusturdugum sitenin bi URL si var dolayısıyla baska kullanıcı URL yi adres cubuguna yazdıgı zaman bnım olusturdugum site ye erisebilicek.bnm yapmak istedgim sey bu siteninde permissionlarını ayarlamak otomatik olarak webpart ,event receiver yada bi cutom action la.ama bunu nasıl yapıcam hangi kutuphaneyi kullanıcam bilmiorum.

 
Gönderildi : 08/08/2012 20:32

(@ilkerAlizat)
Gönderiler: 12
Active Member
 

merheba

ilk defa olarak bir türkiye sitesinde yaziyorum. onun için he kesisi selamlıyorum.

aşağıdaki kod bir Event Handlerdir ki hem Siteni düzenliyor ve hem o Siteye seçilmis User ya Grouplari artirip ve Onlara o Sitede  Contribute hakkı verior. umarim işinize yarar

public override void ItemAdding(SPItemEventProperties properties)

        {

            base.ItemAdding(properties);

            string SiteUrl=properties.AfterProperties["SitUrl"] as string;

            if (!string.IsNullOrEmpty(SiteUrl))

            {

                SPSecurity.RunWithElevatedPrivileges(delegate()

                {

                    using (SPSite mySite = new SPSite(properties.SiteId))

                    {

                        using (SPWeb myWeb = mySite.OpenWeb(properties.Web.ID))

                        {

                            SPFieldUserValueCollection userValues = new SPFieldUserValueCollection(myWeb, properties.AfterProperties["SiteUsers"] != null ? properties.AfterProperties["SiteUsers"].ToString() : string.Empty);

                            string SiteTitle = properties.AfterProperties["Title"] as string ?? string.Empty;

                            SPWeb newWeb = myWeb.Webs.Add(SiteUrl, SiteTitle, "my new site", myWeb.Language, myWeb.WebTemplate, false, false);

                            newWeb.BreakRoleInheritance(true);

                            foreach (SPFieldUserValue uv in userValues)

                            {

                                SPPrincipal principal = uv.User as SPPrincipal ?? myWeb.SiteGroups.GetByID(uv.LookupId) as SPPrincipal;//if (uv.User as SPPrincipal)!=null that is a user else is group

                                SPRoleAssignment newPrincipalRole = new SPRoleAssignment(principal);

                                newPrincipalRole.RoleDefinitionBindings.Add(newWeb.RoleDefinitions["Contribute"]);

                                newWeb.RoleAssignments.Add(newPrincipalRole);

                            }

                        }

                    }

                });

            }

            else

            {

                properties.ErrorMessage = "site address is null";

                properties.Cancel = true;

            }

        } 

 
Gönderildi : 09/08/2012 14:43

(@alicengez)
Gönderiler: 32
Trusted Member
Konu başlatıcı
 

hocam cok tesekkur ederım kodunuzu denemeye calisıcam umarım becerebılırım.cok saolun ayrıca tekrardan

 
Gönderildi : 09/08/2012 15:21

(@ilkerAlizat)
Gönderiler: 12
Active Member
 

başka sorunuz olursa bildiyim kader cevaplamaya hazırım

 
Gönderildi : 09/08/2012 21:07

(@alicengez)
Gönderiler: 32
Trusted Member
Konu başlatıcı
 

cok saolun.benım custom list imde suan ilovesharepoint wsp sini kullanarak create site actionundan templete ini verebiliyorum ayrıca yeni olusturulan sitenin permissionun unique olmasınıda saglıyorum.bnım tek ıhtıyacım olan sey yenı olusturulan sitede grant permission eklemek bunuda custum list in ıcındekı SiteUser da secdıgım kişilerin olasını ıstıyorum.bu baglamda bu kod biraz fazla gibi cunku denedım yeni bi site falan olusturuyor buna ıhtıyacım yok ztn workflow action bunu yapıyor.kodu sadelestırmem gerekıcek anlycagınız bide sunu sorıyım bn event handler ı custom lıst e mı yoksa workflow event handler e mı vermem daha mantıklı olur sızce umarım anlatabılmısımdır=)) cok tesekkur ederım ayrıca tekrarda yardımlarınız ıcın hocam.

 
Gönderildi : 10/08/2012 00:45

Paylaş: