FillClaimsForEntity not called in my custom claim provider

Hi,
I have created a custom claim provider in SharePoint 2013 in order to augment claims with some custom values. It's mostly boilerplate code - nothing special. After deploying and enabling a corresponding farm feature I noticed that the FillClaimsForEntity
method is not called at all. Moreover, other two methods required for augmentation (FillClaimValueTypes and FillClaimTypes) are called only once - when the feature is activated. From my understanding all three methods should be called every time a user logs
in to SharePoint. I'm using integrated Windows authentication with NTLM.
This is abbreviated code showing only important parts:
public class MyClaimProvider : SPClaimProvider
protected const string MyClaimType = "http://www.mywebsite.ca/identity/claims/parrot";
protected const string StringTypeClaim = "http://www.w3.org/2001/XMLSchema#string";
protected override void FillClaimTypes(List<string> claimTypes)
if (claimTypes == null)
throw new ArgumentNullException("claimTypes");
// add our claim types
claimTypes.Add(MyClaimType);
protected override void FillClaimValueTypes(List<string> claimValueTypes)
if (claimValueTypes == null)
throw new ArgumentNullException("claimValueTypes");
// add our claim value type
claimValueTypes.Add(StringTypeClaim);
protected override void FillClaimsForEntity(Uri context, SPClaim entity, List<SPClaim> claims)
if (entity == null)
throw new ArgumentNullException("entity");
if (claims == null)
throw new ArgumentNullException("claims");
claims.Add(CreateClaim(MyClaimType, "kakadu", StringTypeClaim));
public override bool SupportsEntityInformation
get { return true; }
// ... the rest of code goes here
and this is my feature code:
public class MyClaimProviderRegistrationEventReceiver : SPClaimProviderFeatureReceiver
public override string ClaimProviderAssembly
get { return this.GetType().Assembly.FullName; }
public override string ClaimProviderType
get { return typeof(MyClaimProvider).FullName; }
public override string ClaimProviderDisplayName
get { return "MyClaimProvider"; }
public override string ClaimProviderDescription
get { return "MyClaimProvider desc"; }
public override void FeatureActivated(Microsoft.SharePoint.SPFeatureReceiverProperties properties)
base.FeatureActivated(properties);
var cpm = SPClaimProviderManager.Local;
foreach (var cp in cpm.ClaimProviders)
if (cp.ClaimProviderType == typeof(MyClaimProvider))
cp.IsUsedByDefault = true;
cp.IsEnabled = true;
cpm.Update();
break;
Does anybody know why the methods are not called when a user accesses SharePoint?
Thanks,
Leszek
Wiki: wbswiki.com
Website: www.wisenheimerbrainstorm.com

Hi,
The following articles would be helpful:
How often will FillClaimsForEntity in my Custom Claims Provider be called?
http://blogs.msdn.com/b/brporter/archive/2010/11/30/how-often-will-fillclaimsforentity-in-my-custom-claims-provider-be-called.aspx
Checklist for Issues with Custom Claims Providers in SharePoint 2010 and 2013
http://blogs.technet.com/b/speschka/archive/2013/05/15/checklist-for-issues-with-custom-claims-providers-in-sharepoint-2010-and-2013.aspx
SharePoint Custom Claims Provider
http://blog.podrezo.com/sharepoint-custom-claims-provider/
Best Regards
Dennis Guo
TechNet Community Support

Similar Messages

  • Can't use my custom claims provider when access to my site from external url

    Hi,
    I just created a clean SP 2013 (15.0.4641.1000) environment and I have a site collection up and running with access from internal url (http://my_server_name/) and external url (http://cloudshare_external_url/).
    When I access from internal url (with the local administrator account) I can add users to site groups:
    But if I access from external url (with the local administrator account, too) the people picker does not work:
    And if I put the email directly, I get the following error: "Sorry, you are not allowed to share this with external users"
    What am I doing wrong? Am I missing something?

    Hi Sebasl,
    Based on your description, my understanding is that the users cannot be resolved when accessing the site using external URL.
    I recommend to check the authentication provider for the external zone of the web application to see if the custom claims provider is selected.
    Please go to Central Administration > Application Management > Manage web applications > highlight the corresponding web application and then click Authentication Providers in the ribbon > click the external zone.
    Best regards.
    Thanks
    Victoria Xia
    TechNet Community Support

  • Decode function not called for a custom component

    I know this problem happened in the past - in the EA2, EA4 and I believe the beta version as well, but does anyone know if it has been solved for the release ?
    In short - I'm working with the release, created a menuBar component and the decode method in the renderer is not called after I submit the page. In the past, there were rumors that this happened due to relative paths in the JSP (for js files, images, etc.).
    Does anyone else have this problem ? or better , know how to solve it ?
    Thanx,
    Netta.

    It's not that simple - The component is getting rendered, all the encode methods are called and the decode is called also , but only the first time the form is submitted.
    I added this custom component to the guessNumber application, and I have a menuBar in the greeting.jsp that leads to the response.jsp and vice versa. it looks like this in the greeting.jsp page -
    <!-- Start Menu -->
    <t:MenuBar id="bar1" styleClass="myClass" >
    <t:Menu id="menu1" name="menu1">
    <t:Menu id="menu2" name="menu2">
    <t:MenuItem id="item2_1" name="item2_1" action="/mytest/guess/response.jsp"/>
    <t:MenuItem id="item2_2" name="item2_2" action="http://www.msn.com"/>
    <t:Menu id="menu3" name="menu3">
    <t:MenuItem id="item3_1" name="item3_1x" action="http://www.msn.com"/>
    </t:Menu>
    </t:Menu>
    </t:Menu>
    <t:MenuItem id="item3" name="item3" action="http://www.cnn.com"/>
    </t:MenuBar>
    <!-- End Menu -->
    In the response it looks like this -
    <!-- Start Menu -->
    <t:MenuBar id="bar2" styleClass="myClass" >
    <t:MenuItem id="item3" name="item3" action="/mytest/guess/greeting.jsp"/>
    </t:MenuBar>
    <!-- End Menu -->
    and every time a menuItem is clicked on, the JS calls submit form.
    Since the menus are rendered, I assume there's nothing wrong with the rendererType and any other renderer problem. Since the decode is called only once, I assume the right form is being submitted.
    So, what can cause it to stop calling the decode ???
    Could it be that becase I go directly to the page and not through the navigation rules ( I call window.open directly from the JS), it creates a problem ??
    Please help, I've been wasting so much time on this !
    Netta.

  • Workshop 8.1 Calling EJB from Custom Authentication Provider

    I am writing a custom authentication provider that runs on Weblogic Server 8.1 and also on Workshop 8.1. Everything is packaged into a jar file that I put into the mbeantypes directory. From the authentication provider I want to get an EJB home that is on another Weblogic 8.1 server.
    Loading the home from the Weblogic server works great. But in Workshop I get a ClassCastException from the PortableRemoteObject.narrow() call.
    This happens in Workshop even if I remove all my application jar files, so I am left with nothing but the startup classpath and the files in the mbeantypes directory. That is, I don't have any classes in two directories.
    When I look at the class that I actually get back from the call to context.lookup( jndiName ), I get the same stub class back on the Weblogic Server and on the Workshop server. But only on Workshop do I have this casting problem.
    Any ideas?
    Thanks,
    Mark

    Issue has been resolved.
    The reason I've forgotten about Value Object that is being returned by Remoute method to put them into classpath of Authenticator Provider

  • Custom Data Provider Not Registered in Report Server (Sql Server 2012)

    We have a simple test report project set up and can preview the reports with no errors or problems from the designer. We can deploy the report project, but when trying to view the reports from the browser, we get the following error:
    An error as occurred during report processing, (rsProcessingAborted)
    An attempt has been made to use a data extension 'LiMeDAS' that is either not registered for this report server or is not supported in this edition of Reporting Services. (rsDataExtensionNotFound)
    I have followed this article that explained how to register a data provider extension:
    https://msdn.microsoft.com/en-ca/library/bb326409.aspx
    I have placed the assemblies in:
    C:\Program Files\Microsoft SQL Server\MSRS11.LIMEDAS\Reporting Services\ReportServer\bin
    Added the following line to the rsreportserver config file (inside the <extensions><data> tags)
    <Extension Name="LiMeDAS" Type="Limedas.Data.Provider.LimedasConnection,Limedas.Data.Provider"/>
    and finally added the following to the rssrvpolicy config file (inside the top level CodeGroup tag):
    <CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" Name="LiMeDASDataProviderCodeGroup" Description="Grants permission to the LiMeDAS data processing extension for reporting services.">
                  <IMembershipCondition class="UrlMembershipCondition" version="1" Url="C:\Program Files\Microsoft SQL Server\MSRS11.LIMEDAS\Reporting Services\ReportServer\bin\Limedas.Data.Provider.dll"
    />
                </CodeGroup> 
    We have the data extension set up perfectly for the designer, because I can see it as a type of connection and the preview works in the designer.
    But, for some reason it does not work in the server. They were set up the same way, but the server will not work. From the report manager page, when we try to add a data source, the only type option is Sql Server, none of the other extensions mentioned in
    the config file. Does anyone know what else could cause this issue? 

    Hi Justin,
    According to the error message and the issue can be caused by the edition of your SSRS is not support for the custom data provider. For example the express edition have limitation support on this:
    Features Supported by the Editions of SQL Server 2012 .
    If your edition is the supportted edition and the issue can be caused by the custom data provider do not necessarily support all the functionality supplied by Reporting Services data processing extensions. In addition, some OLE DB data providers and ODBC
    drivers can be used to author and preview reports, but are not designed to support reports published on a report server. For example, the Microsoft OLE DB Provider for Jet is not supported on the report server. For more information, see
    Data Processing Extensions and .NET Framework Data Providers (SSRS).
    If you are running on a 32-bit platform, the data provider must be compiled for a 32-bit platform. If you are running on a 64-bit platform, the data provider must be compiled for the 64-bit platform. You cannot use a 32-bit data provider wrapped with 64-bit
    interfaces on a 64 bit platform.
    More details information:Data Sources Supported by Reporting Services (SSRS)
    Similar thread for your reference:
    ERROR: An attempt has been made to use a data extension 'SQL' that is not registered for
    this report server.
    Error when viewing SSRS report with SQL Azure as data source
    If you still have any problem, please feel free to ask.
    Regards
    Vicky Liu
    Vicky Liu
    TechNet Community Support

  • Customer Communication Preferences - Do Not Call & Do Not Email

    Oracle leverages Siebel CRM to develop an effective solution to address the Do Not Call and Email Permissible Use requirements. The application uses the Contacts functionality to manage communication preferences, which when defined, centrally synchronizes all contact records that share the same phone number and email address. Additionally, the relevant information is masked so Oracle employees cannot accidentally reach out to the contact. Therefore, the solution ensures that we are compliant with regulations, enables us to respect individuals' communication preferences and provides an audit trail of changes to their preferences.
    I am working on R12.1.2 and my customer want this feature to be implemented on our Oracle Application.
    My customer asked to implement this my seeing a blog post on Oracle Blogs
    Here is the URL: http://blogs.oracle.com/crm/entry/crm_at_oracle_series_do_not_ca
    This is the only hit I found on internet.
    did you guys ever worked on this kind of requirement ??
    would you guys please help me on how to implement this requirement?
    Thanks,
    Versatile!

    railman wrote:
    What ever happened to the "Do not call lists"??
    I get calls continually from a 616 area code to "lower my credit card interest rate".  It is a scam trying to get credit card numbers.
      I block the numbers on my account but within a few day to a week there is another call from 616 area code with the same scam.  How do I get rid of these for good !??!
    If you asked to be removed they hang up, if you question what credit card they are calling about they hang up, if you question anything about their service other than being willing to submit your card number they hang up.
    BUT, within a few days they call back on a different number, always 616 area code and usually the same exchange and no matter what you do you can't get rid of them unless you block the current number.  HELP!!!
    You can report them at donotcall.gov but it probably won't help.  The people dom't seem to care about breaking the law.

  • ADFS - The metadata does not contain the signing key needed for the entity to be configured as a claims provider trust

    Our customer has provided us with federated metadata.xml file. When we go to import and create the claims provider trust we receive this error message:
    I have performed considerable Google search to be able to tell the customer what is missing. Can you provide explanation as to what ADFS is expecting in the customer xml file that it is not getting?
    Thanks,
    Paul

    They'll help you over here.
    ADFS forums on MSDN
    Regards, Dave Patrick ....
    Microsoft Certified Professional
    Microsoft MVP [Windows]
    Disclaimer: This posting is provided "AS IS" with no warranties or guarantees , and confers no rights.

  • It is so nice spending 2 hours on a phone to be hung up upon waiting for a supervisor. After being told the day before I would get a call when the customer service representiave started her shift at 7pm to give me more answers. I do not like to be stuck w

    What a frustrating experience I have had trying to get away from This phone and Plan. I just want to down grade this phone. What difference does it make to you here? All VZW will do is re certify the phone and give it to someone else. I just would like to down grade to a cheaper phone and do away with android os. I still have the same issues with the phone as I did with my other one within a hour of re activating it. I should have no issues with the os it is flawed and should not happen. I am sorry to say but The blackberry OS is a lot more stable. There may not be as many apps but it is more productive and being able to multi task is a lot more needed on a phone. I was told yesterday I would get a call back today at 7pm when this tech support lady would start her shift to give me my options and she did not call. Making me call at 930pm today and after talking to someone I waited for 45 minuets to be hung up on. That is a real great way to treat a customer and make things better. I just want away from the Andriod OS. What difference does it make to you as a company to make a customer happy who was with you since 08 and having a second device added on to the account? What Poor way to treat someone to make them happy with all the profits you have and can't give anything back to a customer.

    What a frustrating experience I have had trying to get away from This phone and Plan. I just want to down grade this phone. What difference does it make to you here? All VZW will do is re certify the phone and give it to someone else. I just would like to down grade to a cheaper phone and do away with android os. I still have the same issues with the phone as I did with my other one within a hour of re activating it. I should have no issues with the os it is flawed and should not happen. I am sorry to say but The blackberry OS is a lot more stable. There may not be as many apps but it is more productive and being able to multi task is a lot more needed on a phone. I was told yesterday I would get a call back today at 7pm when this tech support lady would start her shift to give me my options and she did not call. Making me call at 930pm today and after talking to someone I waited for 45 minuets to be hung up on. That is a real great way to treat a customer and make things better. I just want away from the Andriod OS. What difference does it make to you as a company to make a customer happy who was with you since 08 and having a second device added on to the account? What Poor way to treat someone to make them happy with all the profits you have and can't give anything back to a customer.

  • Customer Exit not called upon in the Query...

    Dear Guys,
    I am working on the "Slow Moving Item(MC46)" report in BW.We need "No.of Days Not consumed" in the Input selection screen in the BW Query.We tried creating a Formula variable upon "Calday" with Data type "Numeric" and then a Customer Exit is called to the Subtract the "No. of days not consumed" from "Today's date(System Date)" and gives the result as "Earlier date" .
    (Eg: Today's Date : 04-04-08
           No. of Days Consumed : 30
           ZSlow_Mov_Date          : 03-03-08).
    But for some reason the Customer exit is not called upon when we execute the Query (RSRT-->Execute + Debug option)..Can someone take time to throw some light on this,plz?
    Manythanks
    Arun

    Hello Arun,  
    In the User Exit Code, please check at what I_STEP value the variable exit is called.
    See this link for more info about I_STEP
    [Dependencies for Variables of Type Customer Exit |http://help.sap.com/saphelp_nw04/helpdata/en/1d/ca10d858c2e949ba4a152c44f8128a/frameset.htm]
    Thanks
    [Chandran|http://chandranonline.blogspot.com/]

  • GET_V Method is not called for custom field

    Hi,
    We are using CRM 7.0
    I have enhanced component BT120H_CPL and added custom fields into view Details with AET. I am trying to implement search help which depends on another field. I have created V-GETTER for my field and tried to implement search help in this method. However, this method is not called in the program scope.
    I have debugged the application and result is :
    V_GETTER method GET_V_ZZAFLD00000D is created in class ZL_BT120H_C_DETAILS_CN00. It should be called from GET_V_S_EXT method but this method is called in class CL_BT120H_C_DETAILS_CN00 and exception occurs since GET_V_ZZAFLD00000D doesnu2019t exist in class CL_BT120H_C_DETAILS_CN00.
    I tried similar scenario : add search help to existing field of another component. However I couldnu2019t able to run GET_V method again.
    ( It works when I write search help id in the AET but in this way I cannot pass import parameter to it )
    Is there anything I am missing ? Thanks in advance for helps.
    Regards
    Abdul.

    Hi,
        Then, the next possible thing is checking the "enhancement set". Press F2 keeping the cursor on any field and check if the view is showing up as enhanced. Find this information under "Active Enhancement set" in the popup details. If this does not happen, then your enhanced view is not being used. You may want to check the COMPONENT_LOADING BADI if you are using more than one assignment set. You may also want to look at this WIKI.
    [http://wiki.sdn.sap.com/wiki/display/CRM/HowToEnhanceaWebUIComponentinSAP+CRM]
    Regards,
    Arun Prakash

  • P and V Getter not called for custom attributes!

    Hi,
    i implemented a new search structure instead of CRMST_QUERY_SLSORD_BTIL for business transaction search.
    I enhanced the new structure with a custom field and generated v and p-getter methods to have a dropdown listbox.
    Unfortunately the p and v getter are not called by the framework.
    The field in the context node is STRUCT./SEW/BILLINGBLOCK.
    I have no idea why this methods are not called by the framework.
    br
    Jürgen

    For the advanced search you do not have to implement a V getter. Instead, you must
    redefine method GET_DQUERY_DEFINITIONS in the implementation class of the view
    controller.

  • Why is VO getter not called for custom VO attributes?

    Hi,
    The requirement is to add couple of fields on a OAF page. Here is what I did:
    - Created custom VO by extending the standard VO
    - Added fields to the page via personalization.
    The issue is that the values for the custom fields on the page were not showing up. On investigation, I found the VORowImpl getter getAttrInvokeAccessor was not being called for my custom attribute. I tried to check the difference between the attributes for which the getter was called and for which it was not called. I couldn't find any and I'm totally left clueless as to what determines the getter to be called.
    Really appreciate your help to move ahead.
    Thanks,
    Anil
    Edited by: AnilMenta on Mar 5, 2013 10:40 AM

    Hi Anil,
    First of all, Could you please make sure that Extended VO is being picked up during the execution of the page . Ensure that extended VO is substituted
    If the VO is substituted then try Steps below
    1. Enable the diagnostics .. show log on page statements
    2. Search for your custom VO name .
    If you can find your extended VO here, then substitution is right and page is picking up the extended VO.
    Thanks

  • Custom Parameter Provider in new WD template not working (NW04S SP11)

    Hi,
    We're attempting to use the Custom Parameter provider in our portal for many Web Dynpro iviews. In the end we will have from 100-300 SAP clients in the backendsystem and we need this functionality to dynamically route users to the correct backendsystem.
    Our problem is as follows:
    We intend to replace the suffix (clientnumber) for the "sap-wd-arfc-useSys" parameter in the iview property "Application Parameter" so that the value would look something like this:
    sap-wd-arfc-useSys=SAP_R3_Travel: SAP Application we see that the property is there (given in red font color) so I assume it's hidden from editing. How can we edit it or display it for editing? (Btw we have sent an OSS to SAP on the matter)
    One more thing:
    We tested our provider service on the old template and discovered that it only triggers on the iview properties and not the provider parameter that we have registered ("ervjcopostfix"). What are we doing wrong? To me it seems that it fails in the first run (find provider in registry) and jumps forward to the component profile (e.g. Iview properties).
    Why isn't the iview checking for our parameter in the registry? (of course we have verified that the parameter is in the registry and the service is up and running).
    Hope you can help.
    Best Regards,
    Hans Petter Bjørn

    This appears to be resolved... I think something got corrupted on my custom client settings after the mof import.   I deleted it and recreated a new client settings for our pcs.  I then re-enabled the hardware inventory for these 2 mof entries.
      I updated the policy and then did another hardware inventory cycle.  I now see the entry in the log and in resource explorer.

  • "start" not called for Custom Login Command

    Hello,
    I'm working on getting acegi to handle the authentication instead of the app server. So I extended AppServerLoginCommand and overrode doAuthenticate and "start". But "start" never seems to get called; neither during initialization of the server nor before or after doAuthenticate is called. Note that doAuthenticate *does* get called, so BlazeDS does know about my custom command. I tried implementing just LoginCommand instead of extending AppServerLoginCommand but the same result.
    The reason I need start is because I want to grab the WebApplicationContext and from there get the authenticationManager bean so that doAuthentication can do its job.
    I noticed that "stop" never gets called either.
    Any pointers or clues would be appreciated.
    /r

    I looked through the source code and as best I can tell "start" never gets called for LoginCommand. This is, by no means, a certainty since I only partially followed the stack trace and looked at the source near the place where the LoginCommand gets created, so there may be another point in the lifecycle where start gets called. But anyway, if you look at the file at:
    http://opensource.adobe.com/svn/opensource/blazeds/trunk/modules/core/src/java/flex/messag ing/config/MessagingConfiguration.java
    near
    private LoginCommand initLoginCommand(LoginCommandSettings loginCommandSettings)
    you'll notice that the LoginCommand gets created but start is not called.

  • Can EE Customer service call me on my phone? I can not call to UK from abroad

    URGENT Can EE Customer service call me on my phone?  I can not call to UK from abroad

    Hi ,
    Very sorry this is a public forum no calls can be made.
    How can I help with your query?
    Thanks.

Maybe you are looking for

  • How can I remove all my bookmarks from iCloud and start a fresh with only the ones on my iMac

    I accidentally deleted bookmark gilders on my iPad 4 and iCloud removed them from my iMac, iPhone 5, iPhone 4, iPad 2 and MacBook Pro. I turned off Safari on all devices for syncing with iCloud and used Time Machine to restore my Bookmarks.plist on m

  • How to add author's name to existing entry in Adobe Digital Editions

    I have several books listed as Author: Unknown in my Adobe Digital Editions.  After removing these titles from Digital Edition's library, I have added the authors names to a file with these books, and then added them into Digital Editions, but it sti

  • Cannot deathorize computer-- menus are all greyed out

    I'm trying to deauthorize an existing computer before I sell it.  But when I click on the menus, they are mostly greyed out, including the Store menu.  so i cannot apparently login/logout much less authorize/deauthorize.  but I CAN access the store i

  • Upgrade to version 2.102.2.20 has broken code

    Hi everyone, The code below worked using ODAC 2.102.2.10 but now fails with version 2.102.2.20: int rows = 0; using (OracleConnection con = new OracleConnection(Configuration.Instance.ConnectionString)) con.Open(); // Create and set up the command. O

  • "show chat participants" grayed out

    Once I have a chat going, "show chat participants" is grayed out, so I can't add anyone. I'm using version 4.0.3 Anyone encountered this? any solutions? (I'm NOT attempting a Bonjour chat. ) BTW, why isn't there an iChat 4 discussion category when th