GSS-API How to get the client-to-service ticket

In Kerberos when requesting services, the client sends the following two messages to the TGS: A composed message of the Ticket-Granting Ticket and the ID of the requested serviceand authenticator (which is composed of the client ID and the timestamp), all encrypted using the client/TGS session key.
Then upon receiving these messages the TGS sends the followings to the client:
A: Client-to-server ticket (which includes the client ID, client network address, validity period and Client/server session key) encrypted using the service's secret key.
B: Client/server session key encrypted with the client/TGS session key.
Now I'm wondering how to obtain A and B throught the kerberos login in GSS-API . I have the following code that I use to request a kerberized service but it returns only a KerberosTicket in PrivateCredentialsSet for the Subject. A sessionKey can also be obtained form this KerberosTicket ! Which session key is this ? the session key B described above? and Where to get the Client-to-server ticket (A) described above ?
Thanks for any help !
Alex
lc = new LoginContext("login-client", new TextCallbackHandler());
lc.login();
mysubject = lc.getSubject();
java.util.Set principals = lc.getSubject().getPrincipals();
java.util.Iterator iterador = principals.iterator();
if (iterador.hasNext()){
KerberosPrincipal principal = (KerberosPrincipal) iterador.next();
clientName =principal.getName();
PrivilegedAction generateServiceTicket = new ClientAction(clientName,"[email protected]");
Subject.doAs(mysubject, generateServiceTicket);
Set prvCredentials = lc.getSubject().getPrivateCredentials();
for (Iterator i = prvCredentials.iterator(); i.hasNext(); j++) {
KerberosTicket ticket = (KerberosTicket) i.next();
prvKrbCrds = (KerberosTicket[]) mysubject.getPrivateCredentials().toArray(new KerberosTicket[0]);
public Object run() {
try{
GSSManager manager = GSSManager.getInstance();
Oid krb5Mechanism = new Oid("1.2.840.113554.1.2.2");
Oid krb5PrincipalNameType = new Oid("1.2.840.113554.1.2.2.1");
GSSName userName = manager.createName(pn,GSSName.NT_USER_NAME);
GSSCredential cred = manager.createCredential(usr,
GSSCredential.DEFAULT_LIFETIME,
krb5Mechanism,
GSSCredential.INITIATE_ONLY);
GSSName peerName = manager.createName(servicename,
GSSName.NT_HOSTBASED_SERVICE, krb5Mechanism);
GSSContext setContext = manager.createContext(peerName, krb5Mechanism, cred,
GSSContext.DEFAULT_LIFETIME);
setContext.requestInteg(false);
setContext.requestConf(false);
byte[] inputBuf = new byte[0];
byte[] tkt = setContext.initSecContext(inputBuf, 0, 0);
}catch(GSSException gsse){
gsse.printStackTrace();
}

In Kerberos when requesting services, the client sends the following two messages to the TGS: A composed message of the Ticket-Granting Ticket and the ID of the requested serviceand authenticator (which is composed of the client ID and the timestamp), all encrypted using the client/TGS session key.
Then upon receiving these messages the TGS sends the followings to the client:
A: Client-to-server ticket (which includes the client ID, client network address, validity period and Client/server session key) encrypted using the service's secret key.
B: Client/server session key encrypted with the client/TGS session key.
Now I'm wondering how to obtain A and B throught the kerberos login in GSS-API . I have the following code that I use to request a kerberized service but it returns only a KerberosTicket in PrivateCredentialsSet for the Subject. A sessionKey can also be obtained form this KerberosTicket ! Which session key is this ? the session key B described above? and Where to get the Client-to-server ticket (A) described above ?
Thanks for any help !
Alex
lc = new LoginContext("login-client", new TextCallbackHandler());
lc.login();
mysubject = lc.getSubject();
java.util.Set principals = lc.getSubject().getPrincipals();
java.util.Iterator iterador = principals.iterator();
if (iterador.hasNext()){
KerberosPrincipal principal = (KerberosPrincipal) iterador.next();
clientName =principal.getName();
PrivilegedAction generateServiceTicket = new ClientAction(clientName,"[email protected]");
Subject.doAs(mysubject, generateServiceTicket);
Set prvCredentials = lc.getSubject().getPrivateCredentials();
for (Iterator i = prvCredentials.iterator(); i.hasNext(); j++) {
KerberosTicket ticket = (KerberosTicket) i.next();
prvKrbCrds = (KerberosTicket[]) mysubject.getPrivateCredentials().toArray(new KerberosTicket[0]);
public Object run() {
try{
GSSManager manager = GSSManager.getInstance();
Oid krb5Mechanism = new Oid("1.2.840.113554.1.2.2");
Oid krb5PrincipalNameType = new Oid("1.2.840.113554.1.2.2.1");
GSSName userName = manager.createName(pn,GSSName.NT_USER_NAME);
GSSCredential cred = manager.createCredential(usr,
GSSCredential.DEFAULT_LIFETIME,
krb5Mechanism,
GSSCredential.INITIATE_ONLY);
GSSName peerName = manager.createName(servicename,
GSSName.NT_HOSTBASED_SERVICE, krb5Mechanism);
GSSContext setContext = manager.createContext(peerName, krb5Mechanism, cred,
GSSContext.DEFAULT_LIFETIME);
setContext.requestInteg(false);
setContext.requestConf(false);
byte[] inputBuf = new byte[0];
byte[] tkt = setContext.initSecContext(inputBuf, 0, 0);
}catch(GSSException gsse){
gsse.printStackTrace();
}

Similar Messages

  • How to get the status of service in rac

    Dear all,
    how to get the status of service in rac.
    SQL> show parameters service;
    NAME                                 TYPE        VALUE
    service_names                        string      DEVDB, DEVDB1, devdb
    [oracle@rac1 ~]$ srvctl status service -d devdb -s devdb
    PRKO-2120 : The internal database service devdb cannot be managed with srvctl.

    user7244870 wrote:
    Dear all,
    how to get the status of service in rac.
    SQL> show parameters service;
    NAME                                 TYPE        VALUE
    service_names                        string      DEVDB, DEVDB1, devdb
    [oracle@rac1 ~]$ srvctl status service -d devdb -s devdb
    PRKO-2120 : The internal database service devdb cannot be managed with srvctl.
    Internal services cannot be managed with srvctl utility. Check if you have any user defined service in dba_services
    SQL> desc dba_services
    Name                                      Null?    Type
    SERVICE_ID                                         NUMBER
    NAME                                               VARCHAR2(64)
    NAME_HASH                                          NUMBER
    NETWORK_NAME                                       VARCHAR2(512)
    CREATION_DATE                                      DATE
    CREATION_DATE_HASH                                 NUMBER
    FAILOVER_METHOD                                    VARCHAR2(64)
    FAILOVER_TYPE                                      VARCHAR2(64)
    FAILOVER_RETRIES                                   NUMBER(10)
    FAILOVER_DELAY                                     NUMBER(10)
    MIN_CARDINALITY                                    NUMBER
    MAX_CARDINALITY                                    NUMBER
    GOAL                                               VARCHAR2(12)
    DTP                                                VARCHAR2(1)
    ENABLED                                            VARCHAR2(3)
    AQ_HA_NOTIFICATIONS                                VARCHAR2(3)
    CLB_GOAL                                           VARCHAR2(5)http://docs.oracle.com/cd/B19306_01/rac.102/b14197/srvctladmin.htm

  • How to get the client date and time ?

    Dear Sirs...
    Using jdeveloper 10.1.2.0
    How can i get the client date and time using the HttpServletRequest ?
    thanks for any help in advance
    best regards

    If your code is running on the client pc you can just create a new instance of the java.util.Date class. That class automatically defaults to the current time of the client machine. Otherwise if you're running the code on the server, you could insert/post the client date/time by adding its string representation as a parameter to the HTTP request object.
    Ronald

  • How to get the client identity from the certificate at server side

    hi, this is ravi kiran,
    I am working on a project which requires, receiving a signed file from the client side and verify whether the file is signed by a valid certificate that is there in the servers keystore.
    How can i get the client certificate at server side and check with the certificates already present in the servers keystore.
    i have no idea how to do this
    can any one help me
    thanx in advance

    Hi Ravi, did you get any answer to your question ?
    I'm also after a similar problem, please share your solution, if you have any.

  • How to get the CLIENT OS USER NAME using Apex

    Dear All,
    I know there are many other posts (some of them are very old) discuss about this issue. But unfortunately most of the posts endup with NO PROPER ANSWER. But still I believe that tehre has to be some way to do this. So this is my requirement.
    I am using custom authentication module and I want to get the CLIENT MACHINE OS USER NAME for that. But I do not want to do any authentication against the client user domain.
    How can I get this?
    * There are some other way to get this using VB Scripts. But thats not a real solution for this due to followings
    01. User has to manually allow to run VB scripts. So if user dissable that then we canot get the required info
    02. Its working only with specific browsers(Mainly in IE and also we can get that thing work after installing plugins to Firefox.). So this is also depends with the bvrowser and plugings.
    What I want to do is to get this info using a common way which is not depends with the browser or any thirdparty plugins.
    Thanks,
    Alex

    Its good that you did some searching in the forums before you posted the question.
    Most modern browsers would consider what you require as a security/privacy issue and prevents such information from being transmitted available(easily). IE might let you pull out this using a VB script or activex control. Browser specific addons/extension could work but they need some kind of installation to start with. Java could be a way to do it with all browsers, but the end user still has to grant access before it can do any such thing.
    Lets say you were able to pull out such information from an end user, what would be next, get his mail id from outlook ? , access his browsing history, steal credit card information or read cookies?
    Add to that , what if the end user accesses it using any other OS(linux,macintosh or even a smartphone) ? what about windows vista and windows 7 OS's , are you going to write code to handle all those cases too ?
    Here's a blog posting which explains using NTLM authentication with Apex(it still needs configuration from the end user)
    What I want to do is to get this info using a common way which is not depends with the browser or any thirdparty plugins.I guess if this is the question, then the answer would have to be no. I don't think you will be able to find a method that passes this information from the client side without any modification/configuration at their side

  • VBA API: How to get the monitor number?

    Hello,
    I have written
    an Excel application which
    controls an external application
    (making inputs,
    reads out the window,
    etc.).
    I use a lot of API functions, e.g. as in the code from thisarticle:
    https://support.microsoft.com/en-us/kb/194578?wa=wsignin1.0
    A basic
    function of my application is
    to distinguish between windows
    that have the same title
    but are on different monitors.
    In my windows (and NVIDIA) settings the left monitor is 1 and the right monitor is 2.
    In the past I have this routine to "identify" the monitor number from a window handle:
    Function GetWindowMonitor(ByVal hWnd As Long) As Integer
    Dim hMonitor As Long, MI As MONITORINFO, hM
    hMonitor = MonitorFromWindow(hWnd, MONITOR_DEFAULTTONEAREST)
    MI.cbSize = Len(MI)
    GetMonitorInfo hMonitor, MI
    Set mMonitor = New Collection
    EnumDisplayMonitors ByVal 0&, ByVal 0&, AddressOf MonitorEnumProc, ByVal 0&
    For Each hM In mMonitor
    GetWindowMonitor = GetWindowMonitor + 1
    If hM = hMonitor Then Exit Function
    Next
    GetWindowMonitor = 0
    End Function
    But last week I got a new graphic card and now this obvious stupid function fails, because EnumDisplayMonitors delivers the 2nd monitor first and then the 1st
    monitor.
    Long talk, short question: Is there any way to get the real monitor numbers as they are shown inside the windows settings?
    Andreas.

    When you need to identify monitors, call CreateDC with "DISPLAY" as the driver name and pass monitor name as the device name. Then you can draw a number on the result HDC.
    I can not draw that number and I can not set an identifier. As I said in my last post:
    I share this tool with my colleagues at work.
    Okay... CreateDC is an idea... as I've read at MSDN I can call EnumDisplayMonitors with a DC to get informations about the monitor, so I tried the code below, but it doesn't work.
    EnumDisplayMonitors does not call my MonitorEnumProc when I call it with a DC.
    Do I something wrong? Do I misunderstood the MSDN article? Is that not possible? Can you confirm that?
    Andreas.
    Option Explicit
    Private Declare Function GetForegroundWindow Lib "user32" () As Long
    Private Type DISPLAY_DEVICE
    cb As Long
    DeviceName As String * 32
    DeviceString As String * 128
    StateFlags As Long
    DeviceID As String * 128
    DeviceKey As String * 128
    End Type
    Private Const DISPLAY_DEVICE_MIRRORING_DRIVER = &H8
    Private Declare Function EnumDisplayDevicesS Lib "user32" Alias "EnumDisplayDevicesA" ( _
    ByVal DeviceName As String, ByVal iDevNum As Long, lpDisplayDevice As _
    DISPLAY_DEVICE, ByVal dwFlags As Long) As Long
    Private Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" ( _
    ByVal lpszDriver As String, ByVal lpszDevice As String, ByVal lpszOutput As Long, _
    lpInitData As Any) As Long
    Private Declare Function DeleteDC Lib "gdi32" (ByVal hDC As Long) As Long
    Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
    End Type
    Private Declare Function GetWindowRect Lib "user32" ( _
    ByVal hWnd As Long, lpRect As RECT) As Long
    Private Declare Function EnumDisplayMonitors Lib "user32.dll" ( _
    ByVal hDC As Long, ByRef lprcClip As Any, ByVal lpfnEnum As Long, _
    ByVal dwData As Long) As Long
    Private Type MONITORINFO
    cbSize As Long
    rcMonitor As RECT
    rcWork As RECT
    dwFlags As Long
    End Type
    Private Declare Function GetMonitorInfo Lib "user32.dll" Alias "GetMonitorInfoA" ( _
    ByVal hMonitor As Long, ByRef lpmi As MONITORINFO) As Long
    Private Function MonitorEnumProc(ByVal hMonitor As Long, ByVal hdcMonitor As Long, _
    lprcMonitor As RECT, ByVal dwData As Long) As Long
    Dim MI As MONITORINFO
    Debug.Print "Monitor " & hMonitor
    GetMonitorInfo hMonitor, MI
    With MI.rcMonitor
    Debug.Print "Left", "Top", "Right", "Bottom"
    Debug.Print .Left, .Top, .Right, .Bottom
    End With
    'Continue enumeration
    MonitorEnumProc = 1
    End Function
    Function JustNumbers(ByVal What As String) As String
    'Return only numbers from What (by Rick Rothstein)
    Dim i As Long, j As Long, Digit As String
    For i = 1 To Len(What)
    Digit = Mid$(What, i, 1)
    If Digit Like "#" Then
    j = j + 1
    Mid$(What, j, 1) = Digit
    End If
    Next
    JustNumbers = Left$(What, j)
    End Function
    Sub Main()
    Dim DD As DISPLAY_DEVICE
    Dim DDevice
    Dim DDevices As New Collection
    Dim DMonitor
    Dim DMonitors As New Collection
    Dim i As Long, k As Long
    Dim hDC As Long
    Dim DrvName As String, DevName As String
    Dim hWnd As Long, hRECT As RECT
    'Get our window handle
    hWnd = GetForegroundWindow
    'Now I want to know if this window is located on monitor 1 or 2 (or both)
    'Get the coordinates of the window
    GetWindowRect hWnd, hRECT
    With hRECT
    Debug.Print "Window:"
    Debug.Print "Left", "Top", "Right", "Bottom"
    Debug.Print .Left, .Top, .Right, .Bottom
    End With
    'Get the device drivers
    DD.cb = Len(DD)
    i = 0
    Do While EnumDisplayDevicesS(vbNullString, i, DD, 0&) <> 0
    If (DD.StateFlags And DISPLAY_DEVICE_MIRRORING_DRIVER) = 0 Then
    k = InStr(DD.DeviceName, vbNullChar)
    DDevices.Add Left(DD.DeviceName, k - 1)
    End If
    i = i + 1
    Loop
    '2. Get the monitors on each driver
    For Each DDevice In DDevices
    i = 0
    Do While EnumDisplayDevicesS(DDevice & vbNullChar, i, DD, 0&) <> 0
    k = InStr(DD.DeviceName, vbNullChar)
    DMonitors.Add Left(DD.DeviceName, k - 1)
    i = i + 1
    Loop
    Next
    'Create a DC for each monitor and get the coordinates
    For Each DMonitor In DMonitors
    i = InStrRev(DMonitor, "\")
    '"\\.\DISPLAY1"
    DrvName = Left(DMonitor, i - 1) & vbNullChar
    '"Monitor0"
    DevName = Mid(DMonitor, i + 1) & vbNullChar
    hDC = CreateDC(DrvName, DevName, 0, ByVal 0&)
    Debug.Print DrvName, DevName, hDC
    'The driver name is the monitor number!?
    EnumDisplayMonitors hDC, ByVal 0&, AddressOf MonitorEnumProc, Val(JustNumbers(DrvName))
    DeleteDC hDC
    Next
    End Sub

  • SharePoint 2013 Rest API - How to get the item count with startsWith

    Hi All,
    I am using the below url to get the item count for specfied startsWith. For example I want to know how many items are there in the list which starts with "A". When i hit the below url in the address bar i am getting HTTP not found.
    siteURL/sites/Apps/SharePointApp3/_vti_bin/listdata.svc/SampleList/items?$filter=startsWith(Title,’A’)
    Navaneeth

    what
    is SharePointApp3.
    here. 
    it is a webpart.
    this will not work on webpart\apps
    Also I am not sure if it will work with specific SampleList 
    Try 
    siteURL/sites/Apps/SharePointApp3/SampleList/_vti_bin/listdata.svc/Keywords?$filter=substringof('r',Title)
    If this helped you resolve your issue, please mark it Answered

  • How to get the client certificate at server side

    hi, this is ravikiran
    I am working on a project which requires, receiving a signed file from the client side and verify whether the file is signed by a valid certificate that is there in the servers keystore.
    I have no idea how to do this.
    can anyone help me.
    thanx in advance.

    [sorry, deleted irrelevant wrong answer]

  • How to get the client's IP address from within Java Studio Creator JSP/Java

    Hi there.
    I just started using the Java Studio Creator 2 and now I need to get hold of the client IP address - this should be part of the request, but I cannot fint the right way to get hold of that information. I want to be able to access this information from within the Java-code in a JSP/JSPF-page.
    Is there a new way of doing:
    request.getRemoteAddr();
    This is the way I remember it from the JSP/Servlet-days...
    Sincerely,
    - Oystein Saebo -

    javax.servlet.http.HttpServletRequest req = (javax.servlet.http.HttpServletRequest) getExternalContext().getRequest();
    req.getRemoteAddr();

  • Pls help : How to get the client ip address in EJB

    Hi experts,
    I need to find the ip addr of the client which makes the remote call.
    I tried using
    java.rmi.server.RemoteServer.getClientHost()
    But it throws ServerNotActiveException .
    When I tried this in RMI it works fine perfectly.
    If i am right EJB is just similar to RME and it should work in it too..
    Can you please help me in finding out the ip address of the client which makes the ejb call.
    Thanks & Regards,
    Mukunt

    Hi Mukunt,
    There is no portable way to do this in the Remote EJB programming model. The bean class
    is written in a way that is agnostic to those kind of plumbing-related details of the caller.
    --ken                                                                                                                                                                                                                                                                                                                                                                                                                       

  • OIM API - How to get the values in the process form (both parent and child)

    Hi,
    I created an RO with a Process form (both Parent and Child).I created a unconditional process task which takes in the processinstance key and tried to retrieve the process form datas.When i tried to provison the resource,the process task is getting triggered and I could able to get the parent form data but not the child form data.
    Any idea why is this happening?.Is it mandatory to have the "Triggers" ON to get the Child Form data.?
    Thanks,

    try this
    tcResultSet childResults = formOper.getChildFormDefinition(
                             formOper.getProcessFormDefinitionKey(procInstanceKey),
                             formOper.getProcessFormVersion(procInstanceKey));
    This should work,
    Regards,
    Raghav

  • Java GSS API - Kerberos - Receive timed out when requesting service ticket.

    Hi,
    I'm following the following exercises about Kerberos/JGSS-API :
    http://java.sun.com/javase/6/docs/technotes/guides/security/jgss/lab/
    On exercise 3, I get an exception (when requesting a service ticket) from the client side:
    "+Exception in thread "main" java.security.PrivilegedActionException: GSSException: No valid credentials provided (Mechanism level: Receive timed out)
    etc.+"
    This seems to happen when the GSSContext.initSecContext(...) method is called.
    The server side receives the client connection:
    "+Waiting for incoming connection...+
    +Got connection from client /xxx.xxx.x.xxx+"
    But then displays the following exception:
    "+Exception in thread "main" java.security.PrivilegedActionException: java.net.SocketException: Connection reset
    etc.+"
    I checked my KDC (win 2003 Server SP2) and added SPNs with setspn but the error remains.
    Any suggestion are more than welcome !

    The TGT is already present on my Client machine because it is acquired automaticaly from the KDC during the Windows opening session.
    I use then JAAS to access the LSA and obtain the TGT - This doesn't need any further connection to the KDC.
    But the Service Ticket is requested to the KDC by my client machine..
    Here is the complete output (Client side) after I destroyed the tickets (with Kerberos MIT Leash.exe and/or kdestroy.exe ):
    Debug is  true storeKey false useTicketCache true useKeyTab false doNotPrompt false ticketCache is null isInitiator true KeyTab is null refreshKrb5Config is false principal is null tryFirstPass is false useFirstPass is false storePass is false clearPass is false
    Acquire TGT from Cache
    +>>>KinitOptions cache name is C:\Documents and Settings\user.MYDOMAIN\krb5cc_user+
    +>> Acquire default native Credentials+
    +>>> Obtained TGT from LSA: Credentials:+
    [email protected]
    server=krbtgt/[email protected]
    authTime=20080529135209Z
    startTime=20080529135209Z
    endTime=20080530015209Z
    renewTill=20080702135209Z
    flags: FORWARDABLE;RENEWABLE;INITIAL;PRE-AUTHENT
    EType (int): 23
    Principal is [email protected]
    Commit Succeeded
    +Authenticated principal: [[email protected]]+
    Connected to address host1/xxx.xxx.x.xxx
    Found ticket for [email protected] to go to krbtgt/[email protected] expiring on Fri May 30 03:52:09 CEST 2008
    Entered Krb5Context.initSecContext with state=STATE_NEW
    Found ticket for [email protected] to go to krbtgt/[email protected] expiring on Fri May 30 03:52:09 CEST 2008
    Service ticket not found in the subject
    +>>> Credentials acquireServiceCreds: same realm+
    Using builtin default etypes for default_tgs_enctypes
    default etypes for default_tgs_enctypes: 3 1 23 16 17.
    +>>> CksumType: sun.security.krb5.internal.crypto.RsaMd5CksumType+
    +>>> EType: sun.security.krb5.internal.crypto.ArcFourHmacEType+
    +>>> KrbKdcReq send: kdc=yyy.yyy.y.y UDP:88, timeout=30000, number of retries =3, #bytes=1262+
    +>>> KDCCommunication: kdc=yyy.yyy.y.y UDP:88, timeout=30000,Attempt =1, #bytes=1262+
    SocketTimeOutException with attempt: 1
    +>>> KDCCommunication: kdc=yyy.yyy.y.y UDP:88, timeout=30000,Attempt =2, #bytes=1262+
    SocketTimeOutException with attempt: 2
    +>>> KDCCommunication: kdc=yyy.yyy.y.y UDP:88, timeout=30000,Attempt =3, #bytes=1262+
    Exception in thread "main" java.security.PrivilegedActionException: GSSException: No valid credentials provided (Mechanism level: Receive timed out)
    +     at java.security.AccessController.doPrivileged(Native Method)+
    +     at javax.security.auth.Subject.doAs(Subject.java:396)+
    +     at SimpleAuthzz2.loginAndAction(SimpleAuthzz2.java:56)+
    +     at SimpleGssClient.main(SimpleGssClient.java:36)+
    SocketTimeOutException with attempt: 3
    Caused by: GSSException: No valid credentials provided (Mechanism level: Receive timed out)
    +     at sun.security.jgss.krb5.Krb5Context.initSecContext(Krb5Context.java:659)+
    +     at sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:213)+
    +     at sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:158)+
    +     at SimpleGssClient$GssClientAction.run(SimpleGssClient.java:121)+
    +     ... 4 more+
    Caused by: java.net.SocketTimeoutException: Receive timed out
    +     at java.net.PlainDatagramSocketImpl.peekData(Native Method)+
    +     at java.net.DatagramSocket.receive(DatagramSocket.java:662)+
    +     at sun.security.krb5.internal.UDPClient.receive(UDPClient.java:77)+
    +     at sun.security.krb5.KrbKdcReq$KdcCommunication.run(KrbKdcReq.java:278)+
    +     at java.security.AccessController.doPrivileged(Native Method)+
    +     at sun.security.krb5.KrbKdcReq.send(KrbKdcReq.java:195)+
    +     at sun.security.krb5.KrbKdcReq.send(KrbKdcReq.java:140)+
    +     at sun.security.krb5.KrbKdcReq.send(KrbKdcReq.java:106)+
    +     at sun.security.krb5.KrbTgsReq.send(KrbTgsReq.java:215)+
    +     at sun.security.krb5.internal.CredentialsUtil.serviceCreds(CredentialsUtil.java:293)+
    +     at sun.security.krb5.internal.CredentialsUtil.acquireServiceCreds(CredentialsUtil.java:106)+
    +     at sun.security.krb5.Credentials.acquireServiceCreds(Credentials.java:561)+
    +     at sun.security.jgss.krb5.Krb5Context.initSecContext(Krb5Context.java:585)+
    +     ... 7 more+
    It seems like the TGT is still present in the cache, even if Leash displays "no tickets".
    Meanwhile, in the KDC-server side:
    -What is the correct spn to add? C:\setspn GssServer/host1 user ? (I in fact tried many possibilities)..
    -Is there any other special configuration to do in the KDC ?
    Thanks a lot!

  • BSL as a Web Service.  How to get the client Hostname?

    Hi group,
    Is it possible to read the calling client computer name from within a Transaction execution when called as a Web Service (HTTP GET)?
    Some function that would return the same as
    Request.ServerVariables["REMOTE_HOST"]
    or
    req.getRemoteHost();
    from an HTTP Web Server.
    Thanks,
    Francois.

    Thanks Doug,
    I followed your advice with a slight modification as the name of the parameter is Machine instead of IP.
    /XMII/PropertyAccessServlet?mode=Retrieve&PropName=Machine&Content-Type=text/xml
    I accessed this system parameter by using the string above as the URL of an XML Query action block from within my existing BSL transactions.  This aligns better with our current way of exposing the our MII transactions as Web Services.
    Using the XAcute query as proposed by Udayan also works but this would have meant exposing a new interface ( XAcute Query instead of the transaction default Web Service via the /Runner URL).
    Thank you both.

  • How to Get the Client's Environment Variables?

    I have a page which need inputing account of the intranet then send a mail upon the intranet.So,it is important for me to verify if the account is legal or if this account is the user himself or herself in order to refuse any bad sending.
    Of course I can get Environment Variables of "user.name" of my own PC.But How can I get Others before they can send mail?

    You can't read with an applet some system properties, including the "user.name" property. Not even with a signed applet.
    Here you have some links:
    http://java.sun.com/docs/books/tutorial/applet/practical/properties.html
    http://java.sun.com/docs/books/tutorial/applet/practical/security.html
    http://java.sun.com/sfaq/#getProps
    So you should find another way, for instance authentication.

  • Trex Result in the ABAP API - how to get the context

    Hi all
    I have an ABAP application in which I would like to know and display the context of the result like on the sdn.
    E.g. a search for Trex could look like:
    "...configure Trex is done by..."
    - showing bold text where the search criteria appears.
    Is there a function module able to provide this information? (e.g. SRET_INDEX_STORAGE_SEARCHING?)
    Or is there another functionality available in the ABAP-context?
    All ideas are more than welcome
    Thanks in advance
    Peter Michael

    Hi Helmut and Peter,
    there is a FM -> TREX_EXT_SEARCH_DOCUMENTS which will return exactly what you are looking for.
    You pass it the index, etc AND the query string (eg."Trex") as VALUE1 in the structure TREXS_QUERY_ENTRY.
    It will return a list of type TREXT_RESULT_DOCS. The CONTENT field is where the text was found as a string.
    Regards,
    Robin

Maybe you are looking for

  • PDF Reader Problem for Persian PDF's in FF31

    Hi, FF31 Won't show Persian PDF's properly. all characters are busted together and unreadable, I asked a friend and check it on mac and Linux. Is that a bug or something?

  • My key board is stuck in the fuction setting only while in fire fox. i can`t use the question mark i only get this É

    My baby must of hit a combination of keys while no one was looking and i don`t have use of some of my keys any more it`s like my function setting on the key board is stuck on. It only does it while in firefox though my keyboard works normally otherwi

  • Applet - JavaScript communication problem

    Hi, I am creating applet parameter using JavaScript (DOM Tree). But when i am accessing inside the applet, it is coming as null. Here is code: JavaScript Code: <html> <head> </head> <script language="JavaScript">      function testXML(){           va

  • "dynamiclinkmanager quit unexpectedly" - persistant dialogue

    Has anyone else had this problem with Photoshop CC and Lightroom CC?  The dialogue seems to be triggered by attempting to open a file.  It repeats and makes using the software impossible.  This has been happening to me for a few weeks now - very frus

  • Thinkpad T450s Defective [Pictures]

    I had a bad experience with the hinge on an ideapad so the first thing I did when I got the T450s was check the hinge area. One thing I noticed is that on my laptop, the area to the left of the left hinge is slightly separated from the screen area it