Managing TFS 2013 security

Hi,
When I'm trying to run below command in TFS2013 server
tfssecurity /g- "Team Foundation Valid Users" "Team Foundation Administrators" /server:http//tfsserver:8080/tfs
I'm getting Below Error
Error : TF50618: The Team Foundation Valid users Group cannot be modified directly.
Unable to do this from TFS Admin console, remove button is disabled.
Because of this, I'm unable TO ADD\REMOVE a user or group.
Exception Thrown: Access Denied: "User" needs the following permission(s) to perform this action: Edit collection-level information.
Any ways to get out from this loop?
Thanks

Hi Selva,
According to your description, my understanding is that you want to add or remove users or group to the Team Foundation Valid Users in TFS server.
It is by design that the membership of the Team Foundation Valid Users group cannot be modified.
Members of this Team Foundation Valid Users group have access to TFS. This group automatically contains all users and groups that have been added anywhere within TFS Server.
Please refer to Team Foundation Valid Users group information in this document:
http://msdn.microsoft.com/en-us/library/ms253077.aspx.
Here is a similar thread for you to take a look:
http://social.msdn.microsoft.com/Forums/vstudio/en-US/37680186-40dd-45ca-a08d-f102f9bbd171/add-user-to-team-foundation-valid-user-group?forum=tfsadmin
Best regards.
Thanks
Victoria Xia
TechNet Community Support

Similar Messages

  • Error TF255050 when attempting to install reporting services in TFS 2013 in-place upgrade.

    Hi,
    Last week we performed an in-place upgrade of our TFS 2012 server to TFS 2013.   During the upgrade process all went well until we hit reporting.   After placing the reporting server's name in the input and click populate URLs we get the TF255050
    error.  We are running a dual tier setup, the reporting server is on a different server than tfs.  (Though the tfs database and the reporting database share the server).
    Myself and my partner did a lot of digging on here and have tried most everything we could find to no avail.  
    -We have ensured myself(installer) and the tfs service account are local admins on both machines
    -Sql client connectivity tools are installed
    -WMI seems configured correctly when compared to other resolutions to this issue others have posted
    note: this site
    ProBlog on artiso.com was mentioned in several posts as part of a resolution but is a broken link.
    -I can connect to the reporting services manager from the tfs server without a problem, as both myself and the tfs service.
    -I've followed suggestions mentioned in this post (ERROR (TF255050)
    while configuring Reporting Services)
    -I've also looked into windows logs on both machines and really seen nothing useful.  We do know that we can successfully talk to sql server though, as the TFS 2013 install already did so.
    I could really use some direction/help on the issue.  
    Thanks

    Hi Kyleco,  
    Thanks for your post.
    Your TFS 2013’s SQL Server instance and the Reporting Server installed on the same machine?
    On your TFS 2013 Server machine, open the SQL Server Management Studio and try connect to your Reporting Server, ensure can connect successfully.
    You didn’t configure the Reporting Server for your TFS 2012 Server? If yes, we suggest you in-place upgrade to TFS 2013 Server first, then manually configure the Reporting Server for your TFS 2013 Server:
    http://nakedalm.com/integrate-reporting-and-analyses-services-with-team-foundation-server-2013/.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • TFS 2013 Upgrade 3 Admin Console hangs

    Hi,
    I upgraded TFS 2013 to TFS 2013.3 and it worked ok for few days. Now when i try to access TFS Admin Console it hangs. When I try to access through TWA its d same problem.
    I did a)Recycle App pool b)Restart the TFS site c)Reboot the server  yet I find the same error.
    Can you please help me in the right direction to fix the issue.
    I get in the event viewer as below:
    TF53010: The
    following error has occurred in a Team Foundation component or extension
    TF400703: Unable to initialize the specified service
    Microsoft.TeamFoundation.Server.Core.Location.TeamFoundationConnectionService.
    Web Request Details Url:
    TF400733: The request has been canceled: Client disconnected.. (type RequestCanceledException) Exception Stack Trace: at Microsoft.TeamFoundation.Framework.Server.TeamFoundationRequestContext.GetService[T]() at Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.Execute(ExecuteType
    executeType, CommandBehavior behavior) at Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.ExecuteReader() at Microsoft.TeamFoundation.Framework.Server.PropertyComponent5.GetPropertyValue(ArtifactSpecDbPagingManager dbPagingManager,
    IEnumerable`1 propertyNameFilters, ArtifactKind artifactKind, GetPropertiesOptions options) at Microsoft.TeamFoundation.Framework.Server.CommandGetArtifactPropertyValue.ExecuteInternal(ArtifactKind artifactKind, IEnumerable`1 propertyNameFilters, ArtifactSpecDbPagingManager
    dbPagingManager, GetPropertiesOptions options) at Microsoft.TeamFoundation.Framework.Server.TeamFoundationPropertyService.GetProperties(TeamFoundationRequestContext requestContext, IEnumerable`1 artifactSpecs, IEnumerable`1 propertyNameFilters, GetPropertiesOptions
    options) at Microsoft.TeamFoundation.Server.Core.TeamFoundationCatalogService.BuildCatalogObjects(TeamFoundationRequestContext requestContext, List`1 databaseResources, List`1 databaseServiceReferences, List`1 databaseNodes, List`1 databaseDependencies, CatalogQueryOptions
    queryOptions, List`1& matchingNodes, List`1& matchingResources) at Microsoft.TeamFoundation.Server.Core.TeamFoundationCatalogService.QueryNodesInternal(TeamFoundationRequestContext requestContext, IEnumerable`1 pathSpecs, IEnumerable`1 resourceTypeFilters,
    IEnumerable`1 artifactIdFilters, CatalogQueryOptions queryOptions) at Microsoft.TeamFoundation.Server.Core.TeamFoundationCatalogService.QueryNodes(TeamFoundationRequestContext requestContext, IEnumerable`1 pathSpecs, IEnumerable`1 resourceTypeFilters, IEnumerable`1
    propertyFilters, CatalogQueryOptions queryOptions) at Microsoft.TeamFoundation.Server.Core.TeamFoundationCatalogService.QueryNodes(TeamFoundationRequestContext requestContext, String pathSpec, Guid resourceTypeFilter, IEnumerable`1 propertyFilters) at Microsoft.TeamFoundation.Server.Core.Location.TeamFoundationConnectionService.Microsoft.TeamFoundation.Framework.Server.ITeamFoundationService.ServiceStart(TeamFoundationRequestContext
    systemRequestContext) at Microsoft.TeamFoundation.Framework.Server.ServiceProvider.GetServiceImpl[T](TeamFoundationRequestContext requestContext)
    Thanks,
    Su
    Su

    I removed cache from program data.. then i got it installed.
    however after instalaltion; when i try to open tfs admin console.. it hangs
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
    - <System>
    <Provider Name="Application Hang" />
    <EventID Qualifiers="0">1002</EventID>
    <Level>2</Level>
    <Task>101</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2014-12-26T11:17:52.000000000Z" />
    <EventRecordID>733275</EventRecordID>
    <Channel>Application</Channel>
    <Computer></Computer>
    <Security />
    </System>
    - <EventData>
    <Data>TfsMgmt.exe</Data>
    <Data>12.0.30723.0</Data>
    <Data>530</Data>
    <Data>01d020fd21076938</Data>
    <Data>0</Data>
    <Data><Program Files>\Microsoft Team Foundation Server 12.0\Tools\TfsMgmt.exe</Data>
    <Data>d23245ab-8cf0-11e4-aeba-005056a63d84</Data>
    <Binary>55006E006B006E006F0077006E0000000000</Binary>
    </EventData>
    </Event>
    Su

  • ISE Addon for Checkout or Checkins via TFS 2013

    Hi
    I am coordination the development of some PowerShell scripts to work against our SharePoint Farm.  Now as there is more that just me developing these scripts, I think we need to start doing regular checkin and checkouts in our TFS 2013.  Anyway,
    I naively thought there must be an addon  I could add to ISE for this; since it seems such a common requirement. However, there does seem much out there that is actively being used. Are there alternatives that are widely used such a series of PS functions
    anyone knows about. 
    Daniel 
    Freelance consultant

    Hi Daniel,
    If you want to complete checkout in Powershell ISE automatically, please go through this article:
    Protect Your PowerShell Scripts with Version Control
    In addition, you can also refer to this script
    PowerShell ISE-specific profile script, which performs a few simple things:
    Checks if you have the TFS client installed (eg Team Explorer).
    Registers for ISE events on each open file and any files you open later.
    Upon editing of a file, if it is TFS-managed then checks it out.
    The end result is the same TFS workflow experience from within the PowerShell ISE as Visual Studio provides.
    Refer to:
    Automatic TFS Check Out for PowerShell ISE
    If there is anything else regarding this issue, please feel free to post back.
    If you have any feedback on our support, please click here.
    Best Regards,                              
    Anna Wang
    TechNet Community Support

  • How to create an Epic level in TFS 2013

    Hi All,
    I am using TFS 2013 (Premise license) in my project. I can see PBI and Feature levels are displayed as default. I want to create additional levels for Epic and Themes. Could you please someone direct me how to do this in TFS 2013?
    Thanks in advance.
    Ilango

    Hi llango,
    For Epic level, you can check this blog for the details:
    http://blogs.msdn.com/b/visualstudioalm/archive/2014/09/11/scaled-agile-framework-using-tfs-to-support-epics-release-trains-and-multiple-backlogs-whitepaper.aspx
    If you want to use Agile portfolio management, then you can go through this link:
    https://msdn.microsoft.com/en-us/library/dn306083.aspx
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Any way i can create and manage SharePoint 2013 workflows in browser.

    Guys,
    is there any way i can created and manager sharepoint 2013 workflows in browser like Nintex lets you do. This will eliminate the need for sharepoint designer.
    thanks
    MM

    No. SharePoint's work flows are created from SharePoint Designer or Visual Studio. Third party solutions like Nintex have other approaches.
    Mike Smith TechTrainingNotes.blogspot.com
    Books:
    SharePoint 2007 2010 Customization for the Site Owner,
    SharePoint 2010 Security for the Site Owner

  • Does On-Premise TFS 2013 work with Office 365 natively or do I need an Exchange/O365 Hybrid solution?

    Hello. We currently have an on-premise Exchange 2010 environment with 2 servers setup in a DAG. Our Development Department uses an on-premise TFS 2013 server for everything, they can't work without
    it. Upper Management wants the IT Dept to move the company from on-premise Exchange 2010 DAG to Office 365. My concern is TFS 2013 since it uses AD and Exchange for workflow notifications. An employee's AD account is given permission to resources
    inside TFS 2013 and since Exchange attributes are tied to their AD account they receive workflow notifications. My question is will I need to keep a permanent Exchange 2010/O365 Hybrid solution in-place in order for TFS 2013 to continue function
    properly? If the answer is yes than that is fine, I am just looking for confirmation before I start the project. I would appreciate any advice on this topic.<o:p></o:p>
    Thanks<o:p></o:p>
    <o:p></o:p>

    Hi Cirbin,
    As far as I know, it's not supported to integrate TFS 2013 with Office 365. You can check the
    link for more information.
    For your situation, whether keep a permanent Exchange 2010/O365 Hybrid solution or not, you might open a new thread in SharePoint/Exchange forum for a better response.  From the thred, seems you need  to keep the hybrid solution.
    And for integration Office 365 users to TFS, please vote the user voice
    here.
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. <br/> Click <a
    href="http://support.microsoft.com/common/survey.aspx?showpage=1&scid=sw%3Ben%3B3559&theme=tech"> HERE</a> to participate the survey.

  • TFS 2013 + MRM - Build & Release Failure

    I have a project in a Git repo in my TFS 2013 environment, and it's automated releases are failing. I am using ReleaseGitTemplate.12.xaml (from
    http://blogs.msdn.com/b/visualstudioalm/archive/2013/12/09/how-to-modify-the-build-process-template-to-use-the-option-trigger-release-from-build.aspx) as my build process template, and VS 2013 as my editor.
    The error message in the build log under the heading "Other Errors and Warnings" is: "Release build failed (type Exception)".
    The stack trace is:
    at System.Activities.Statements.Throw.Execute(CodeActivityContext context)
    at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager)
    at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)
    After the error occurs, when I bring up the MRM Client it doesn't appear as if a release was even attempted.
    If I set the "Release Build" property on the "Process" tab for the build def to "False", and then run a build using that build def...the build succeeds. I can then, successfully, do a Manual Release using the latest (successful)
    build output and everything works -- i.e. my web/app is updated on the server, including my web.config.token file being processed with the variables in the various stages of my release template.
    I need to figure out why the automated release won't work. I have another project in the same environment that uses TFVC (and ReleaseTfvcTemplate.12.xaml from the same blog thread) and it's automated releases work just fine.
    theBoringCoder

    Hi BC, 
    Thanks for your post.
    You’re using TFS 2013 Update 4 and Release Management Server, Client, Deployment Agent 2013 Update 4 ?
    Try to manually run release template(using completed TFS build) from RM Client, the release can run successfully?
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Importing modified Bug WIT does not refresh the template in TFS 2013 for the project created using Scrum Template.

    Hi,
    We have a TeamProjectA created in a collection using ScrumTemplate 2013.4. I have added a new State 'Duplicate' in the Bug WIT and modified the workflow. Also the ProcessConfiguration file is modified to match the metastate and imported using the ImportWit
    Commands which were successful. When I Export the modified WIT using Process Editor for TeamProjectA I can see the Bug.xml has my changes. However, when I try to create a new Bug through TWA, I do not see the new State'Duplicate' that I added.
    I dont see my changes are updated in the common configuration files Path ie C:\\Program Files\Microsoft Team Foundation Server 12.0\Tools\Deploy\ProcessTemplateManagerFiles
    Note: I have a different TeamProjectB created using the Agile template created under the same Collection as my other TeamProjectA. Not sure if this has anything to do with my problem.

    Hi NetLearuner15,  
    Thanks for your reply.
    If you want use witadmin command on your TFS Server machine, you need install VS 2013 on your TFS 2013 Server machine.
    Have you tried create new Bug using VS? The new added state value shows correctly in VS or cannot see it in VS too?
    You’re using TFS 2013 Update 4 and VS 2013 Update 4?
    Yes, you can restart your TFS Server and check the result.
    And we suggest you add a new custom field in your Bug_Test work item type(Fields and Layout) or only edit a default state value in it using Process Editor, then save this Bug_Test work item type and check if this new update shows correctly when you create
    a new Bug_Test work item from TFS Server. If the  new field or changed state value can be updated correctly in your TFS Server, I think your initial ‘Duplicate’ state value not defined correctly in your Bug WIT>>workflow.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • TFS performance report pack not working on TFS 2013

    Hi
    I have TFS 2013 setup and I found TFS performance report pack from http://blogs.msdn.com/b/granth/archive/2009/02/03/announcing-tfs-performance-report-pack.aspx URL.
    These reports don't work after uploading to my report server. The blog talk about creating a shared data source TfsActivityReportDS
    and using Data Source=localhost;Initial Catalog=TfsActivityLogging
    as connection string.
    I don't have any database by name TfsActivityReportDS in my TFS and as a result I am not able to run any report on my TFS 2013 server.
    Is there any way to get these reports work for TFS 2013? Or is there other TFS performance report pack made for TFS 2013?
    Regards, Premal Acharya

    Hi Charles,
    Thanks a ton for your help. :)
    It worked on TFS 2013. I followed your steps. I also found one easy way to edit the queries mentioned in those rdl files. I opened them in text editor and replaced TfsActivityLogging with my TFS project name (Tfs_DefaultCollection). Saved rdl file and opened
    it in report builder and then my job was only to modify the data source.
    I really appreciate your help for getting the reports worked on TFS 2013.
    However I am only stuck with one little issue pertained to Server Status - Source Control Request Queue.rdl file
    This report file doesn't have any queries and it also uses XML as connection to the data source. When I run this report on my TFS server I am getting error as URL "http://localhost:8080/versioncontrol/v1.0/administration.asmx" not found.
    Detailed information about the report file is given below.
    Report Name
    Server Status - Source Control Request Queue
    Connection type
    XML
    Connection string in data source 
    http://localhost:8080/versioncontrol/v1.0/administration.asmx
    Query Under data set
    <Query>
       <Method Name="QueryServerRequests" 
    Namespace="http://schemas.microsoft.com/TeamFoundation/2005/06/VersionControl/Admin/03">
       </Method>
       <ElementPath IgnoreNamespaces="true">*</ElementPath>
    </Query>
    -------END---------
    I don't know how to get it work. Your help and advice on this will be highly appreciated.
    Thanks again for helping me to get other reports worked with TFS 2013.
    Regards, Premal Acharya

  • Using container managed form-based security in JSF

    h1. Using container managed, form-based security in a JSF web app.
    A Practical Solution
    h2. {color:#993300}*But first, some background on the problem*{color}
    The Form components available in JSF will not let you specify the target action, everything is a post-back. When using container security, however, you have to specifically submit to the magic action j_security_check to trigger authentication. This means that the only way to do this in a JSF page is to use an HTML form tag enclosed in verbatim tags. This has the side effect that the post is not handled by JSF at all meaning you can't take advantage of normal JSF functionality such as validators, plus you have a horrible chimera of a page containing both markup and components. This screws up things like skinning. ([credit to Duncan Mills in this 2 years old article|http://groundside.com/blog/DuncanMills.php?title=j2ee_security_a_jsf_based_login_form&more=1&c=1&tb=1&pb=1]).
    In this solution, I will use a pure JSF page as the login page that the end user interacts with. This page will simply gather the input for the username and password and pass that on to a plain old jsp proxy to do the actual submit. This will avoid the whole problem of having to use verbatim tags or a mixture of JSF and JSP in the user view.
    h2. {color:#993300}*Step 1: Configure the Security Realm in the Web App Container*{color}
    What is a container? A container is basically a security framework that is implemented directly by whatever app server you are running, in my case Glassfish v2ur2 that comes with Netbeans 6.1. Your container can have multiple security realms. Each realm manages a definition of the security "*principles*" that are defined to interact with your application. A security principle is basically just a user of the system that is defined by three fields:
    - Username
    - Group
    - Password
    The security realm can be set up to authenticate using a simple file, or through JDBC, or LDAP, and more. In my case, I am using a "file" based realm. The users are statically defined directly through the app server interface. Here's how to do it (on Glassfish):
    1. Start up your app server and log into the admin interface (http://localhost:4848)
    2. Drill down into Configuration > Security > Realms.
    3. Here you will see the default realms defined on the server. Drill down into the file realm.
    4. There is no need to change any of the default settings. Click the Manage Users button.
    5. Create a new user by entering username/password.
    Note: If you enter a group name then you will be able to define permissions based on group in your app, which is much more usefull in a real app.
    I entered a group named "Users" since my app will only have one set of permissions and all users should be authenticated and treated the same.
    That way I will be able to set permissions to resources for the "Users" group that will apply to all users that have this group assigned.
    TIP: After you get everything working, you can hook it all up to JDBC instead of "file" so that you can manage your users in a database.
    h2. {color:#993300}*Step 2: Create the project*{color}
    Since I'm a newbie to JSF, I am using Netbeans 6.1 so that I can play around with all of the fancy Visual Web JavaServer Faces components and the visual designer.
    1. Start by creating a new Visual Web JSF project.
    2. Next, create a new subfolder under your web root called "secure". This is the folder that we will define a Security Constraint for in a later step, so that any user trying to access any page in this folder will be redirected to a login page to sign in, if they haven't already.
    h2. {color:#993300}*Step 3: Create the JSF and JSP files*{color}
    In my very simple project I have 3 pages set up. Create the following files using the default templates in Netbeans 6.1:
    1. login.jsp (A Visual Web JSF file)
    2. loginproxy.jspx (A plain JSPX file)
    3. secure/securepage.jsp (A Visual Web JSF file... Note that it is in the sub-folder named secure)
    Code follows for each of the files:
    h3. {color:#ff6600}*First we need to add a navigation rule to faces-config.xml:*{color}
        <navigation-rule>
    <from-view-id>/login.jsp</from-view-id>
            <navigation-case>
    <from-outcome>loginproxy</from-outcome>
    <to-view-id>/loginproxy.jspx</to-view-id>
            </navigation-case>
        </navigation-rule>
    NOTE: This navigation rule simply forwards the request to loginproxy.jspx whenever the user clicks the submit button. The button1_action() method below returns the "loginproxy" case to make this happen.
    h3. {color:#ff6600}*login.jsp -- A very simple Visual Web JSF file with two input fields and a button:*{color}
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:webuijsf="http://www.sun.com/webui/webuijsf">
        <jsp:directive.page
    contentType="text/html;charset=UTF-8"
    pageEncoding="UTF-8"/>
        <f:view>
            <webuijsf:page
    id="page1">
    <webuijsf:html id="html1">
    <webuijsf:head id="head1">
    <webuijsf:link id="link1"
    url="/resources/stylesheet.css"/>
    </webuijsf:head>
    <webuijsf:body id="body1" style="-rave-layout: grid">
    <webuijsf:form id="form1">
    <webuijsf:textField binding="#{login.username}"
    id="username" style="position: absolute; left: 216px; top:
    96px"/>
    <webuijsf:passwordField binding="#{login.password}" id="password"
    style="left: 216px; top: 144px; position: absolute"/>
    <webuijsf:button actionExpression="#{login.button1_action}"
    id="button1" style="position: absolute; left: 216px; top:
    216px" text="GO"/>
    </webuijsf:form>
    </webuijsf:body>
    </webuijsf:html>
            </webuijsf:page>
        </f:view>
    </jsp:root>h3. *login.java -- implent the
    button1_action() method in the login.java backing bean*
        public String button1_action() {
            setValue("#{requestScope.username}",
    (String)username.getValue());
    setValue("#{requestScope.password}", (String)password.getValue());
            return "loginproxy";
        }h3. {color:#ff6600}*loginproxy.jspx -- a login proxy that the user never sees. The onload="document.forms[0].submit()" automatically submits the form as soon as it is rendered in the browser.*{color}
    {code}
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
    version="2.0">
    <jsp:output omit-xml-declaration="true" doctype-root-element="HTML"
    doctype-system="http://www.w3.org/TR/html4/loose.dtd"
    doctype-public="-W3CDTD HTML 4.01 Transitional//EN"/>
    <jsp:directive.page contentType="text/html"
    pageEncoding="UTF-8"/>
    <html>
    <head> <meta
    http-equiv="Content-Type" content="text/html;
    charset=UTF-8"/>
    <title>Logging in...</title>
    </head>
    <body
    onload="document.forms[0].submit()">
    <form
    action="j_security_check" method="POST">
    <input type="hidden" name="j_username"
    value="${requestScope.username}" />
    <input type="hidden" name="j_password"
    value="${requestScope.password}" />
    </form>
    </body>
    </html>
    </jsp:root>
    {code}
    h3. {color:#ff6600}*secure/securepage.jsp -- A simple JSF{color}
    target page, placed in the secure folder to test access*
    {code}
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:webuijsf="http://www.sun.com/webui/webuijsf">
    <jsp:directive.page
    contentType="text/html;charset=UTF-8"
    pageEncoding="UTF-8"/>
    <f:view>
    <webuijsf:page
    id="page1">
    <webuijsf:html id="html1">
    <webuijsf:head id="head1">
    <webuijsf:link id="link1"
    url="/resources/stylesheet.css"/>
    </webuijsf:head>
    <webuijsf:body id="body1" style="-rave-layout: grid">
    <webuijsf:form id="form1">
    <webuijsf:staticText id="staticText1" style="position:
    absolute; left: 168px; top: 144px" text="A Secure Page"/>
    </webuijsf:form>
    </webuijsf:body>
    </webuijsf:html>
    </webuijsf:page>
    </f:view>
    </jsp:root>
    {code}
    h2. {color:#993300}*_Step 4: Configure Declarative Security_*{color}
    This type of security is called +declarative+ because it is not configured programatically. It is configured by declaring all of the relevant parameters in the configuration files: *web.xml* and *sun-web.xml*. Once you have it configured, the container (application server and java framework) already have the implementation to make everything work for you.
    *web.xml will be used to define:*
    - Type of security - We will be using "form based". The loginpage.jsp we created will be set as both the login and error page.
    - Security Roles - The security role defined here will be mapped (in sun-web.xml) to users or groups.
    - Security Constraints - A security constraint defines the resource(s) that is being secured, and which Roles are able to authenticate to them.
    *sun-web.xml will be used to define:*
    - This is where you map a Role to the Users or Groups that are allowed to use it.
    +I know this is confusing the first time, but basically it works like this:+
    *Security Constraint for a URL* -> mapped to -> *Role* -> mapped to -> *Users & Groups*
    h3. {color:#ff6600}*web.xml -- here's the relevant section:*{color}
    {code}
    <security-constraint>
    <display-name>SecurityConstraint</display-name>
    <web-resource-collection>
    <web-resource-name>SecurePages</web-resource-name>
    <description/>
    <url-pattern>/faces/secure/*</url-pattern>
    <http-method>GET</http-method>
    <http-method>POST</http-method>
    <http-method>HEAD</http-method>
    <http-method>PUT</http-method>
    <http-method>OPTIONS</http-method>
    <http-method>TRACE</http-method>
    <http-method>DELETE</http-method>
    </web-resource-collection>
    <auth-constraint>
    <description/>
    <role-name>User</role-name>
    </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>FORM</auth-method>
    <realm-name/>
    <form-login-config>
    <form-login-page>/faces/login.jsp</form-login-page>
    <form-error-page>/faces/login.jsp</form-error-page>
    </form-login-config>
    </login-config>
    <security-role>
    <description/>
    <role-name>User</role-name>
    </security-role>
    {code}
    h3. {color:#ff6600}*sun-web.xml -- here's the relevant section:*{color}
    {code}
    <security-role-mapping>
    <role-name>User</role-name>
    <group-name>Users</group-name>
    </security-role-mapping>
    {code}
    h3. {color:#ff6600}*Almost done!!!*{color}
    h2. {color:#993300}*_Step 5: A couple of minor "Gotcha's"_ *{color}
    h3. {color:#ff6600}*_Gotcha #1_*{color}
    You need to configure the "welcome page" in web.xml to point to faces/secure/securepage.jsp ... Note that there is *_no_* leading / ... If you put a / in there it will barf all over itself .
    h3. {color:#ff6600}*_Gotcha #2_*{color}
    Note that we set the <form-login-page> in web.xml to /faces/login.jsp ... Note the leading / ... This time, you NEED the leading slash, or the server will gag.
    *DONE!!!*
    h2. {color:#993300}*_Here's how it works:_*{color}
    1. The user requests the a page from your context (http://localhost/MyLogin/)
    2. The servlet forwards the request to the welcome page: faces/secure/securepage.jsp
    3. faces/secure/securepage.jsp has a security constraint defined, so the servlet checks to see if the user is authenticated for the session.
    4. Of course the user is not authenticated since this is the first request, so the servlet forwards the request to the login page we configured in web.xml (/faces/login.jsp).
    5. The user enters username and password and clicks a button to submit.
    6. The button's action method stores away the username and password in the request scope.
    7. The button returns "loginproxy" navigation case which tells the navigation handler to forward the request to loginproxy.jspx
    8. loginproxy.jspx renders a blank page to the user which has hidden username and password fields.
    9. The hidden username and password fields grab the username and password variables from the request scope.
    10. The loginproxy page is automatically submitted with the magic action "j_security_check"
    11. j_security_check notifies the container that authentication needs to be intercepted and handled.
    12. The container authenticates the user credentials.
    13. If the credentials fail, the container forwards the request to the login.jsp page.
    14. If the credentials pass, the container forwards the request to *+the last protected resource that was attempted.+*
    +Note the last point! I don't know how, but no matter how many times you fail authentication, the container remembers the last page that triggered authentication and once you finally succeed the container forwards your request there!!!!+
    +The user is now at the secure welcome page.+
    If you have read this far, I thank you for your time, and I seriously question your ability to ration your time pragmatically.
    Kerry Randolph

    If you want login security on your web app, this is one way to do it. (the easiest way i have seen).
    This method allows you to create a custom login form and error page using JSF.
    The container handles the actual authentication and protection of the resources based on what you declare in web.xml and sun-web.xml.
    This example uses a statically defined user/password, stored in a file, but you can also configure JDBC realm in Glassfish, so that that users can register for access and your program can store the username/passwrod in a database.
    I'm new to programming, so none of this may be a good practice, or may not be secure at all.
    I really don't know what I'm doing, but I'm learning, and this has been the easiest way that I have found to add authentication to a web app, without having to write the login modules yourself.
    Another benefit, and I think this is key ***You don't have to include any extra code in the pages that you want to protect*** The container manages this for you, based on the constraints you declare in web.xml.
    So basically you set it up to protect certain folders, then when any user tries to access pages in that folder, they are required to authenticate.
    --Kerry                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • How to Find Actual Time Spent on a TASK in TFS 2013 by using the scrum template

    Hi! Currently we are using the TFS 2013 version with Scrum template this template contains only Remaining work measure for Task item and there is no
    other option for getting the Actual time spent on particular Task and Bug having the option called Effort. How to find the Actual Time spent or Actual effort hours on particular TASK is it possible? In the similar way the Agile Template having the These options
    like
    1 Original Estimate
    2 Completed Work
    3 Remaining Work 
    Can i use these 3 for Scrum Templete also?
    We require the feature similarly like Atlasian JIRA product (JIRA consist the Actual time, Estimation Time and Log).

    The Scrum template doesn't have these fields, tracking "spent time" is not really in line the philosophy of Scrum. it's tracking data that is not really useful anyway, unless you have to do some form of reporting. In which case you probably already
    have a system to track time in at a higher level. 
    The way TFS tracks time is very hard to use when you have a highly collaborative team, it would require you to create tasks for each person contributing to a task or constant re-asssigning of tasks to track the correct time spent. How else would you track
    two peopleworking together? Pair programming, for example is a practice we at scrum.org highly promote. As well as pairing a tester and a developer up on applying ATDD when working on a story together. When a story is taking "too long" to move off
    the board a technique called swarming is often applied, in which all team members help out to move the story along at a higher pace or to get it unstuck. These ways of workign are very, very, very hard to capture in TFS. But we think the threshold to use these
    techniques should be very low. People should default to these ways of working and not be punished by bad functioning tooling.
    As mentioned by Alexandr, you can extend the Scrum template with the same fields the MSF templates use, but I would not recommend it. Instead, if you need to track time, first consider doing it in different tool and at a different level than task. Maybe
    feature, activity or product backlog item.
    If you still want to track time, then a tool like
    Imaginet Time Sheet can extend TFS in ways that make it a lot easier to track time against any work item.
    As a last resort, consider
    adding the fields from the MSF template, but I beg you to reconsider.
    My blog: blog.jessehouwing.nl

  • Error Connecting to TFS 2013 from Oracle PL/SQL using MSSCCI

    Hi,
    previously we were able to connect to TFS 2008 through MSSCCI.
    we have MSSCCI 2013 provider, Teamexplorer 2013 andVersion Control Interface installed.
    While trying to connect to TFS 2013 from ORacle PL/SQL Developer 10.5 through MSSCCI ; there is an error coming up when we enter the server url ... it is allowing us only until <tfs home url> without collection...
    "The request failed with the error message
    <head><title>Document moved></title></head>
    <body><h1>Object Model</h1>This document may be found<aHREF=/<Collectionname>/Services/v1.0/ServerStatus.asmx>">http://<tfshome
    url>/<Collectionname>/Services/v1.0/ServerStatus.asmx> But the plugin picks it up automatically.. Am i correct?
    How to resolve the above error?
    Thank you
    Su

    Hi Su, 
    Thanks for your post.
    How do you manually build  your PL/SQL/Oracle projects?
    TFS Build invoke MSBuild command to build project/solution on build agent machine by default. If these projects can be built using MSBuild command line manually, then we can use TFS Build(default build process template) to build these projects.
    If these projects need be built using another complier, and this compiler support run the command line to invoke it, so you can add the InvokeProcess activity(execute the command line) to invoke this compiler to build these projects in build process template,
    then create build definition using this customized build process template.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Solution Manager 4.0 Security

    Hi all,
    If anybody has experience with the Solution Manager 4.0 Security, could you please share the list of authorization objects used for implementation of Solution Manager for the following scenarios:
    1. Implementation & Distribution,
    2. Roadmaps,
    3. E-Learing,
    4. Service Desk,
    5. ChaRM (Change Request Management),
    6. Solution Monitoring,
    7. Diagnostics,
    8. Solution Reporting.
    I would appreciate your help in this regard.
    Thanks

    Hi Balaji,
    here is a list of roles in solution manager:
    http://help.sap.com/saphelp_sm40/helpdata/en/f9/35023b6b33162ee10000000a11402f/content.htm
    Hope that helps,
    Frank.

  • Why do I get build failed "Can't find project or library" in TFS 2013

    Using TFS 2013, VB6, Windows Server 2008R2
    Problem: 
    While performing a TFS build of a VB6 application, I am receiving an error "Compile error in file c:\builds\clsCommon.cls
    Line 122:Can'tfind project or library"
    Setup:
    I have three projects: two VB6 dll's and one vb.net COM Callable Wrapper (CCW) dll. The first project (VB6)
    is called MyBase.dll. When I issue a make from the IDE, it complies and builds the dll. When I perform a build from TFS, again it builds without issue. 
    Next, is my .net assembly. Lets just say it complies and I'm able to compile other applications with it as
    a reference. In fact, let me state that I can compile my entire suite of applications and they work when I build them from the IDE. The problem is when I build from TFS 
    Finally I build the next VB6 project using TFS. This DLL (Called batch) internally references myBase.dll. Inside
    my batch project I have a class called clsCommon.cls. At line number 122 inside clsCommon I instantiate an object based on myBase.clsLOGs. Now when I run the TFS build, I get the error that Batch.clsCommon can not find myBase.clsLOGs:
    Private g_ErrorLogs AS MyBase.clsLOGs '<---- Line 122 of Batch.clsCommon 
    That is the nuts and bolts of it. 
    What I have tried:
    Compatibility mode is turned off. I tried to set it to Binary Compatibility, but I get an error that I can't
    set Compatibility Mode.
    All of out DLL's and EXE's are moved into
    a common executable folder D:\PEEPS\bin. When we set references in the IDE, we point to D:\PEEPS\bin. In TFS, the builds drop into C:\builds.
    IDE Builds drop into D:\PEEPS\bin
    Project references look in D:\PEEPS\bin
    TFS builds and drops into C:\builds
    Why are we doing builds in TFS if makes from the IDE are working?
    Also, to circumvent the issue in the past, we simply took the builds from the developers IDE and gave it to
    QA for testing. If everything tested ok, QA gave it to production support for implementation. The problem with that solution is our industry regulators do not want developers to give production EXE's and DLL's to QA or Production Support. They have to be able
    to perform their own builds and TFS is our code repository.
    Thank you in advance for you help.
    HaYen
    BJK1

    SOLVED
    Hi John,
    Thank you for the reply. 
    Solved this yesterday (had some other projects to work on had to shelve this for a while).
    There is a
    dependency structured path to out compiles:
    Project A is
    dependency for Project B
    Project A and B are required for project C
    etc
    There are about 10 VB6 projects overall.  What we noticed is that if you tried to open one of the last projects in the chain, sometimes we would get an error stating it could find one or more of the other projects.  The thing is all but one of
    these projects were referenced in the (run time) References section of the project and there was no Visual Basic Group so no Project References.  So how were the end projects' finding the initial projects?  I needed to solve this problem to fix my
    TFS issue.
    The answer was in the vbproj file. Internal to the project file a class file can be provided:
    class=someclassname; ..\projectname\classname.cls
    Once I removed the lowest level project as a run time reference and added it as a
    reference in the project file, my builds worked from the top down.
    BJK1

Maybe you are looking for

  • When generating WebHelp, "Adobe RoboHelp 8 has encountered a problem and needs to close" appears.

    I'm using RH 8.0.2.208 (both patches applied). This project is a child project in a merged project structure and it is the only one that I am having problems publishing. I've tried deleting the CPD file and creating a new layout, but the error still

  • CC Apps on Windows 8 / Modify Install

    Hi -- I have just installed Photoshop CC and Illustrator CC on my machine running Windows 8. I noticed that both 32 bit and 64 bit versions of Photoshop and Illustrator are installed. Since I'm using Windows 64-bit do I need both? I'm assuming I don'

  • Imac and external hard drive

    I'm not sure I'm posting in the right category but here goes anyway. I am hoping someone who has had a similar problem can give me advice. I bought a Western Digital "My Book" 250 gig external for my imac back in July. It has fail and I am getting no

  • URGENT: Replication of Session Data doesn't work properly

    We have an envirnoment that consist of 2 physical machine, two wls-server           instances on each of these, and two wls-clusters. One of the clusters have           light workload, the other that are our problem have a heavy workload. We         

  • Why I build program display a loading dialog?

    Hello, I build a exe program use labview,the program include a lot of vi, the build is successful,and the exe program run is ok,but when the program is loading display a load dialog,how can I setting would not display the dialog? 附件: 未标题-1.jpg ‏117 K