/// <exception cref="System.IO.IOException"/>
            /// <exception cref="System.Exception"/>
            public override void Cancel <_T0>(Org.Apache.Hadoop.Security.Token.Token <_T0> token
                                              , Configuration conf)
            {
                ApplicationClientProtocol rmClient = GetRmClient(token, conf);

                if (rmClient != null)
                {
                    try
                    {
                        CancelDelegationTokenRequest request = Records.NewRecord <CancelDelegationTokenRequest
                                                                                  >();
                        request.SetDelegationToken(ConvertToProtoToken(token));
                        rmClient.CancelDelegationToken(request);
                    }
                    catch (YarnException e)
                    {
                        throw new IOException(e);
                    }
                    finally
                    {
                        RPC.StopProxy(rmClient);
                    }
                }
                else
                {
                    localSecretManager.CancelToken((Org.Apache.Hadoop.Security.Token.Token <RMDelegationTokenIdentifier
                                                                                            >)token, GetRenewer(token));
                }
            }
Ejemplo n.º 2
0
        /// <exception cref="System.Exception"/>
        public virtual void TestCancelDelegationTokenOnHA()
        {
            CancelDelegationTokenRequest request = CancelDelegationTokenRequest.NewInstance(cluster
                                                                                            .CreateFakeToken());

            ClientRMProxy.CreateRMProxy <ApplicationClientProtocol>(this.conf).CancelDelegationToken
                (request);
        }
Ejemplo n.º 3
0
 /// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/>
 public override CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                     request)
 {
     this._enclosing.ResetStartFailoverFlag(true);
     // make sure failover has been triggered
     NUnit.Framework.Assert.IsTrue(this._enclosing.WaittingForFailOver());
     return(CancelDelegationTokenResponse.NewInstance());
 }
Ejemplo n.º 4
0
            /// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/>
            /// <exception cref="System.IO.IOException"/>
            public Void Run()
            {
                CancelDelegationTokenRequest request = Org.Apache.Hadoop.Yarn.Util.Records.NewRecord
                                                       <CancelDelegationTokenRequest>();

                request.SetDelegationToken(dToken);
                clientRMService.CancelDelegationToken(request);
                return(null);
            }
Ejemplo n.º 5
0
 /// <exception cref="System.IO.IOException"/>
 public virtual CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                    request)
 {
     SecurityProtos.CancelDelegationTokenRequestProto requestProto = ((CancelDelegationTokenRequestPBImpl
                                                                       )request).GetProto();
     try
     {
         return(new CancelDelegationTokenResponsePBImpl(proxy.CancelDelegationToken(null,
                                                                                    requestProto)));
     }
     catch (ServiceException e)
     {
         throw UnwrapAndThrowException(e);
     }
 }
Ejemplo n.º 6
0
            /// <exception cref="System.IO.IOException"/>
            public virtual CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                               request)
            {
                if (!this.IsAllowedDelegationTokenOp())
                {
                    throw new IOException("Delegation Token can be cancelled only with kerberos authentication"
                                          );
                }
                Org.Apache.Hadoop.Yarn.Api.Records.Token protoToken = request.GetDelegationToken(
                    );
                Org.Apache.Hadoop.Security.Token.Token <MRDelegationTokenIdentifier> token = new Org.Apache.Hadoop.Security.Token.Token
                                                                                             <MRDelegationTokenIdentifier>(((byte[])protoToken.GetIdentifier().Array()), ((byte
                                                                                                                                                                           [])protoToken.GetPassword().Array()), new Text(protoToken.GetKind()), new Text(protoToken
                                                                                                                                                                                                                                                          .GetService()));
                string user = UserGroupInformation.GetCurrentUser().GetUserName();

                this._enclosing.jhsDTSecretManager.CancelToken(token, user);
                return(Org.Apache.Hadoop.Yarn.Util.Records.NewRecord <CancelDelegationTokenResponse
                                                                      >());
            }
        /// <exception cref="System.IO.IOException"/>
        /// <exception cref="System.Exception"/>
        public override void Cancel <_T0>(Org.Apache.Hadoop.Security.Token.Token <_T0> token
                                          , Configuration conf)
        {
            Org.Apache.Hadoop.Yarn.Api.Records.Token dToken = Org.Apache.Hadoop.Yarn.Api.Records.Token
                                                              .NewInstance(token.GetIdentifier(), token.GetKind().ToString(), token.GetPassword
                                                                               (), token.GetService().ToString());
            MRClientProtocol histProxy = InstantiateHistoryProxy(conf, SecurityUtil.GetTokenServiceAddr
                                                                     (token));

            try
            {
                CancelDelegationTokenRequest request = Org.Apache.Hadoop.Yarn.Util.Records.NewRecord
                                                       <CancelDelegationTokenRequest>();
                request.SetDelegationToken(dToken);
                histProxy.CancelDelegationToken(request);
            }
            finally
            {
                StopHistoryProxy(histProxy);
            }
        }
Ejemplo n.º 8
0
 /// <exception cref="System.IO.IOException"/>
 public virtual CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                    request)
 {
     throw new IOException("MR AM not authorized to cancel delegation" + " token");
 }
 /// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/>
 /// <exception cref="System.IO.IOException"/>
 public virtual CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                    request)
 {
     // TODO Auto-generated method stub
     return(null);
 }
Ejemplo n.º 10
0
 /// <exception cref="System.IO.IOException"/>
 public virtual CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                    request)
 {
     /* Should not be invoked by anyone. */
     throw new NotImplementedException();
 }
Ejemplo n.º 11
0
 /// <exception cref="System.IO.IOException"/>
 public virtual CancelDelegationTokenResponse CancelDelegationToken(CancelDelegationTokenRequest
                                                                    request)
 {
     return(null);
 }