From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-002e3701.pphosted.com (mx0b-002e3701.pphosted.com [148.163.143.35]) by mx.groups.io with SMTP id smtpd.web11.7542.1607568328628997529 for ; Wed, 09 Dec 2020 18:45:28 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=MiFofhY0; spf=pass (domain: hpe.com, ip: 148.163.143.35, mailfrom: prvs=061307e4aa=nickle.wang@hpe.com) Received: from pps.filterd (m0148664.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 0BA2dXiV005456 for ; Thu, 10 Dec 2020 02:45:27 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pps0720; bh=4SiPOb5xBdMFIkPjTp/NQC5M63ppXHLuTRTh/J5bMtQ=; b=MiFofhY0vHLvi0gnawJsFVC6bwdYp97NzQlbq56kEPMsAmoQd9lkpXlW+D40rBHzrV37 in9SVsxYrKaL4WgmlCeSmW/f07TyZiKtLmdrS+y85eOuB4G8YQ+hL3wYMAgR3jdbArDI h0Kw9GY8bGcCYFO3eqaMHfrCX0n05vBXJpu0RLj4gcdNV49w7YUFR94bsOi2kNXXmG9V jyqj6E2M6LEvaAuVBqj0wGUSG5WGD6uPTrUIrDk4hmdooDQUoMqKoh+ccD11+Qq1prho Ok0OAyDi6+Ppxg9oGN2v5BiCdp00GTLS3nZ6M746FJdJfDQk5kxMEe8iowGQUMGs6Foj iQ== Received: from g9t5009.houston.hpe.com (g9t5009.houston.hpe.com [15.241.48.73]) by mx0b-002e3701.pphosted.com with ESMTP id 35a69x990n-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 10 Dec 2020 02:45:27 +0000 Received: from G2W6311.americas.hpqcorp.net (g2w6311.austin.hp.com [16.197.64.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by g9t5009.houston.hpe.com (Postfix) with ESMTPS id 84CC671 for ; Thu, 10 Dec 2020 02:45:26 +0000 (UTC) Received: from G4W9325.americas.hpqcorp.net (16.208.32.94) by G2W6311.americas.hpqcorp.net (16.197.64.53) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 10 Dec 2020 02:45:10 +0000 Received: from G9W9209.americas.hpqcorp.net (2002:10dc:429c::10dc:429c) by G4W9325.americas.hpqcorp.net (2002:10d0:205e::10d0:205e) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 10 Dec 2020 02:44:49 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (15.241.52.13) by G9W9209.americas.hpqcorp.net (16.220.66.156) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Thu, 10 Dec 2020 02:44:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XtZxcfoNOK6oeLxqlUYxdT8JrleC+aZUEOZ27Tufxc7HF0ka4PmQf0K96uchWLsyDdlVGBELcjwYNv2G1+IdBRDu1pIJw1WHcvebVkUkJjH5rCHGdAFZFeQcEuKLAKP0cCtyYR6iU4TUEPjCGsnk5QTJ0C3MmD+yS3QyIJ5FSJeTiWxsaV/gKYQx6nj5Q+JG48e3cVYrNxI/kIo8M+v5PnxeDrZWN4mrI+2xLbInACwJydoFr3V6TvTBmopDto2BOxDZdTRqiTgdFq0vh42AycU0u4pUaYZja7RhV5+SsRGEJ80RDSGD/CEkG0K2Lk5Wg0Fd03ftWSAJTqugIkOQ1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4SiPOb5xBdMFIkPjTp/NQC5M63ppXHLuTRTh/J5bMtQ=; b=dmZyHf9+lJbYsgSEW/l82aHCbcrQ9PtkYc2CnJzGsPHNQOxSr/sLT8G2v+64G7+YnlYYkUOMCYoqw1apTB0y6i2vrfRn8GtkZCdr4txzQCLPvtSQFjf6KP173qikZfnMrwc6vS4thhmUWbky7YMaR+N/7qmVIDW8zXnVeSd6Cb9HQRHTpukm8T3+CrriyidLgAVEPAahfyfcFk6HE5HEDISXrwyQxr5vl+qUDrzlaGi4q87x5B/6y4I3lUq3H27aeqJFpu6QDb9q43USH8xH5ruhlZtAAH0AlevQaT+DxiLU+ytSv5TpeUDvcCchur9zr3pnqMiGcHUAoQHywVrGvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hpe.com; dmarc=pass action=none header.from=hpe.com; dkim=pass header.d=hpe.com; arc=none Received: from DF4PR8401MB0812.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:760d::7) by DF4PR8401MB0809.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:7608::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.12; Thu, 10 Dec 2020 02:44:47 +0000 Received: from DF4PR8401MB0812.NAMPRD84.PROD.OUTLOOK.COM ([fe80::e475:6a2b:ed1c:a060]) by DF4PR8401MB0812.NAMPRD84.PROD.OUTLOOK.COM ([fe80::e475:6a2b:ed1c:a060%11]) with mapi id 15.20.3654.014; Thu, 10 Dec 2020 02:44:47 +0000 From: "Nickle Wang" To: "Chang, Abner (HPS SW/FW Technologist)" , "devel@edk2.groups.io" CC: "O'Hanley, Peter (EXL)" Subject: Re: [PATCH 1/2] RedfishPkg/Include: EDKII Redfish Credential Header file Thread-Topic: [PATCH 1/2] RedfishPkg/Include: EDKII Redfish Credential Header file Thread-Index: AQHWzg3zm62BCP45Akys/Z3FFTjf1anvoD/A Date: Thu, 10 Dec 2020 02:44:47 +0000 Message-ID: References: <20201209084333.22422-1-abner.chang@hpe.com> <20201209084333.22422-2-abner.chang@hpe.com> In-Reply-To: <20201209084333.22422-2-abner.chang@hpe.com> Accept-Language: zh-TW, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: hpe.com; dkim=none (message not signed) header.d=none;hpe.com; dmarc=none action=none header.from=hpe.com; x-originating-ip: [2001:b011:5c04:5ee2:852e:ddde:5093:2eac] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 6098b0af-b12f-4e3d-e725-08d89cb58f1e x-ms-traffictypediagnostic: DF4PR8401MB0809: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4125; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xEDWiC4/Fe3YxsoNSVeqlIjD5eYs9Vbmz2RadcSiorHpuO9ZeDOg1vQmRDJ1vM3ChNljQRtmjmrRpPuBMS4p4zceZ9GB0yfTNtbVL4hLsyK0xiQo3y1blETw45BHI/EoxjoK0DwM3lJ9pUJasDoGcGXYCkpIIWNIDh4JolHTg8y1oLbiSTnCLXbhiZwSnZGY+Ctpyw5l2w9etB3hA1yEBli//tVLr5pdchcG4WzPL0mUWWmSpY5Hxlijhr7jgUZ7/MfnBiz4u4pqidzkCypFhQ1QIjnM/ksY0W8plwoQnK2OZIhbmr/MiCqhGp9VFzWiHsRSIS+UlY0089WBcpvtFw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DF4PR8401MB0812.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(376002)(136003)(346002)(366004)(508600001)(33656002)(53546011)(52536014)(8936002)(71200400001)(66476007)(83380400001)(8676002)(76116006)(4326008)(5660300002)(55016002)(64756008)(7696005)(86362001)(66556008)(110136005)(186003)(66946007)(2906002)(6506007)(66446008)(9686003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?us-ascii?Q?wg3Gg1EFGxLTEXHU7Jlq+dCHJXseA7MuSx/MG89zLG/H9JlCei6WmGcmlRvn?= =?us-ascii?Q?LRfTuOV11q2/FqgM+KgMKYxOK9xxcL4wMv5jCsYmDYHLFhwWjd0RTeQ7j+JZ?= =?us-ascii?Q?/OFNEdsHGLuzGi4zP5u4Rv2vW2Rmu+TlSmRVzOpp5IVIxYmR0dx5E2+eZENQ?= =?us-ascii?Q?Z1vM+uzZBjJ01OWemRLhm7RxRYpbhFGu11Qkb8tmRfBzr3DBuOmP+wpW6Jbn?= =?us-ascii?Q?joZaqqeS8BWRzi/pu4AXTx3JPVlZsDzSeTL49YRJeWYfDhZK15fB4LkwTUHR?= =?us-ascii?Q?NlpOTFwMZgOhS8dBRffokM81BYUCUPinDu1eWPk1g9ZgcJt82SBF/SHoHrdO?= =?us-ascii?Q?7GvCFA5XjRjSZ2+BPVVkLpl991OEuP+c/cEPq+PPZfZaUOMjCFZRryn7/XBp?= =?us-ascii?Q?cvBNn1k92z5s1eM+uEAVkxfU53yjG2KEpSq0RnXdlSseYNuahQOlvUzipb1p?= =?us-ascii?Q?DxlqNcGf/eiv/Y/FgEpcnS20T8eMHPziHXLpt7H+xSbOX9lzDlVJLOUoRGL2?= =?us-ascii?Q?lpx7NywCOn3rmKGDHuHZoAhdbMfrfQgzIJOMTOyuVUxB4efTjvV280IX5fmJ?= =?us-ascii?Q?ShtjCvnnZ7NNdVHD5WGkX5cuBV3xhI3nXyeCNiTPwNrFN7gOcAmOY6SzQdcO?= =?us-ascii?Q?bCsRtDs+9Jz4kovdI1ekverNKBzg7jXFU8seHSZxbQEDC52gkIP8C4xf1J+E?= =?us-ascii?Q?XInkGAFA0CIucnyQOg0tO+2eikh6JRHR+dfYPxnpaZcEvvw7UPFo4tHR9UyM?= =?us-ascii?Q?siJC8yPz2PVWgiOccPq1Aejboys2lRE+ut39foj0B4RmtWAfhZDY/3u530GW?= =?us-ascii?Q?3z92vj1oDWpHZgna70jUqdCIQCJ2xki+m/Xzk5LLp94VB1ayqBIojeSSRV81?= =?us-ascii?Q?4ok1UvrkOdFyf4i49zI7dcyM7AKWaDQqABNSFdi05OmZKA5FB+NZaHcfvGsp?= =?us-ascii?Q?vRJuCrfNeLlwbvCNDTKUswXpi9QRQo+mAZCHrS5HQAeLiLzCwtcChDyHehyg?= =?us-ascii?Q?trMRapOwx1M6cfvIhFvTx4jDlVncJsvM1zFjSXxB3zlnO84=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DF4PR8401MB0812.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 6098b0af-b12f-4e3d-e725-08d89cb58f1e X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Dec 2020 02:44:47.6216 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 1/chwH6M5iF0yZnqqy5IV8wXj79FgNEh+LD/hM+DZNUAPV/BBhJhJIycu6J/CnzrS4y6idXyl/FsCR1S8adorA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DF4PR8401MB0809 X-OriginatorOrg: hpe.com X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.343,18.0.737 definitions=2020-12-09_19:2020-12-09,2020-12-09 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 priorityscore=1501 clxscore=1015 impostorscore=0 mlxscore=0 malwarescore=0 lowpriorityscore=0 bulkscore=0 adultscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2012100018 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Nickle Wang > -----Original Message----- > From: Chang, Abner (HPS SW/FW Technologist) > Sent: Wednesday, December 9, 2020 4:44 PM > To: devel@edk2.groups.io > Cc: Wang, Nickle (HPS SW) ; O'Hanley, Peter (EXL) > > Subject: [PATCH 1/2] RedfishPkg/Include: EDKII Redfish Credential Header > file >=20 > Signed-off-by: Jiaxin Wu > Signed-off-by: Ting Ye > Signed-off-by: Siyuan Fu > Signed-off-by: Fan Wang > Signed-off-by: Abner Chang >=20 > Cc: Nickle Wang > Cc: Peter O'Hanley > --- > .../Include/Protocol/EdkIIRedfishCredential.h | 101 ++++++++++++++++++ > RedfishPkg/RedfishPkg.dec | 3 + > 2 files changed, 104 insertions(+) > create mode 100644 RedfishPkg/Include/Protocol/EdkIIRedfishCredential.h >=20 > diff --git a/RedfishPkg/Include/Protocol/EdkIIRedfishCredential.h > b/RedfishPkg/Include/Protocol/EdkIIRedfishCredential.h > new file mode 100644 > index 0000000000..34e33b1e00 > --- /dev/null > +++ b/RedfishPkg/Include/Protocol/EdkIIRedfishCredential.h > @@ -0,0 +1,101 @@ > +/** @file > + This file defines the EDKII_REDFISH_CREDENTIAL_PROTOCOL interface. > + > + Copyright (c) 2019, Intel Corporation. All rights reserved.
> + (C) Copyright 2020 Hewlett Packard Enterprise Development LP
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > + > +**/ > + > +#ifndef EDKII_REDFISH_CREDENTIAL_H_ > +#define EDKII_REDFISH_CREDENTIAL_H_ > + > +typedef struct _EDKII_REDFISH_CREDENTIAL_PROTOCOL > EDKII_REDFISH_CREDENTIAL_PROTOCOL; > + > +#define EDKII_REDFISH_CREDENTIAL_PROTOCOL_GUID \ > + { \ > + 0x8804377, 0xaf7a, 0x4496, { 0x8a, 0x7b, 0x17, 0x59, 0x0, 0xe9, 0x= ab, > 0x46 } \ > + } > + > +typedef enum { > + AuthMethodNone, ///< No authentication is required. > + AuthMethodHttpBasic, ///< Basic authentication is required. > + AuthMethodRedfishSession, ///< Session authentication is required. > + AuthMethodMax > +} EDKII_REDFISH_AUTH_METHOD; > + > +typedef enum { > + ServiceStopTypeNone =3D 0, ///< Stop Redfsih service withou= t reason. > + ServiceStopTypeSecureBootDisabled, ///< Stop Redfsih service becasue > EFI > + ///< Secure Boot is disabled. > + ServiceStopTypeExitBootService, ///< Stop Redfsih service becasue > existing > + ///< Boot Service. > + ServiceStopTypeMax > +} EDKII_REDFISH_CREDENTIAL_STOP_SERVICE_TYPE; > + > + > +/** > + Retrieve platform's Redfish authentication information. > + > + This functions returns the Redfish authentication method together with > the user Id and > + password. > + - For AuthMethodNone, the UserId and Password could be used for HTTP > header authentication > + as defined by RFC7235. > + - For AuthMethodRedfishSession, the UserId and Password could be used > for Redfish > + session login as defined by Redfish API specification (DSP0266). > + > + Callers are responsible for and freeing the returned string storage. > + > + @param[in] This Pointer to > EDKII_REDFISH_CREDENTIAL_PROTOCOL instance. > + @param[out] AuthMethod Type of Redfish authentication method= . > + @param[out] UserId The pointer to store the returned Use= rId > string. > + @param[out] Password The pointer to store the returned Pas= sword > string. > + > + @retval EFI_SUCCESS Get the authentication information > successfully. > + @retval EFI_ACCESS_DENIED SecureBoot is disabled after EndOfDxe= . > + @retval EFI_INVALID_PARAMETER This or AuthMethod or UserId or > Password is NULL. > + @retval EFI_OUT_OF_RESOURCES There are not enough memory > resources. > + @retval EFI_UNSUPPORTED Unsupported authentication method is > found. > + > +**/ > +typedef > +EFI_STATUS > +(EFIAPI *EDKII_REDFISH_CREDENTIAL_PROTOCOL_GET_AUTH_INFO) ( > + IN EDKII_REDFISH_CREDENTIAL_PROTOCOL *This, > + OUT EDKII_REDFISH_AUTH_METHOD *AuthMethod, > + OUT CHAR8 **UserId, > + OUT CHAR8 **Password > + ); > + > +/** > + Notify the Redfish service provide to stop provide configuration servi= ce to > this platform. > + > + This function should be called when the platfrom is about to leave the= safe > environment. > + It will notify the Redfish service provider to abort all logined sessi= on, and > prohibit > + further login with original auth info. GetAuthInfo() will return > EFI_UNSUPPORTED once this > + function is returned. > + > + @param[in] This Pointer to > EDKII_REDFISH_CREDENTIAL_PROTOCOL instance. > + @param[in] ServiceStopType Reason of stopping Redfish service. > + > + @retval EFI_SUCCESS Service has been stoped successfully. > + @retval EFI_INVALID_PARAMETER This is NULL. > + @retval Others Some error happened. > + > +**/ > +typedef > +EFI_STATUS > +(EFIAPI *EDKII_REDFISH_CREDENTIAL_PROTOCOL_STOP_SERVICE) ( > + IN EDKII_REDFISH_CREDENTIAL_PROTOCOL *This, > + IN EDKII_REDFISH_CREDENTIAL_STOP_SERVICE_TYPE ServiceStopType > + ); > + > +struct _EDKII_REDFISH_CREDENTIAL_PROTOCOL { > + EDKII_REDFISH_CREDENTIAL_PROTOCOL_GET_AUTH_INFO > GetAuthInfo; > + EDKII_REDFISH_CREDENTIAL_PROTOCOL_STOP_SERVICE StopService; > +}; > + > +extern EFI_GUID gEdkIIRedfishCredentialProtocolGuid; > + > +#endif > diff --git a/RedfishPkg/RedfishPkg.dec b/RedfishPkg/RedfishPkg.dec > index b38e9b4789..861f6dd0c8 100644 > --- a/RedfishPkg/RedfishPkg.dec > +++ b/RedfishPkg/RedfishPkg.dec > @@ -25,6 +25,9 @@ > ## Include/Protocol/RedfishDiscover.h > gEfiRedfishDiscoverProtocolGuid =3D { 0x5db12509, 0x4550, 0x4347,= { 0x96, > 0xb3, 0x73, 0xc0, 0xff, 0x6e, 0x86, 0x9f }} >=20 > + ## Include/Protocol/EdkIIRedfishCredential.h > + gEdkIIRedfishCredentialProtocolGuid =3D { 0x8804377, 0xaf7a, 0x4496, {= 0x8a, > 0x7b, 0x17, 0x59, 0x0, 0xe9, 0xab, 0x46 } } > + > [Guids] > gEfiRedfishPkgTokenSpaceGuid =3D { 0x4fdbccb7, 0xe829, 0x4b4c, { = 0x88, > 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }} >=20 > -- > 2.17.1