Skip to content

Commit 3cf65e4

Browse files
committed
fix: fix access_token for ic_oss_bucket
1 parent 76650be commit 3cf65e4

File tree

4 files changed

+39
-12
lines changed

4 files changed

+39
-12
lines changed

Cargo.lock

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ strip = true
1717
opt-level = 's'
1818

1919
[workspace.package]
20-
version = "0.9.6"
20+
version = "0.9.7"
2121
edition = "2021"
2222
repository = "https://github.com/ldclabs/ic-oss"
2323
keywords = ["file", "storage", "oss", "s3", "icp"]

src/ic_oss_bucket/src/store.rs

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -148,9 +148,11 @@ impl Bucket {
148148
now_sec as i64,
149149
)
150150
.map_err(|err| (401, err))?;
151-
if token.subject == ctx.caller && &token.audience == canister {
151+
152+
if &token.audience == canister {
152153
ctx.ps =
153154
Policies::try_from(token.policies.as_str()).map_err(|err| (403u16, err))?;
155+
ctx.caller = token.subject;
154156
return Ok(ctx);
155157
}
156158
}
@@ -194,9 +196,10 @@ impl Bucket {
194196
now_sec as i64,
195197
)
196198
.map_err(|err| (401, err))?;
197-
if token.subject == ctx.caller && &token.audience == canister {
199+
if &token.audience == canister {
198200
ctx.ps =
199201
Policies::try_from(token.policies.as_str()).map_err(|err| (403u16, err))?;
202+
ctx.caller = token.subject;
200203
return Ok(ctx);
201204
}
202205
}
@@ -1905,10 +1908,33 @@ mod test {
19051908
1,
19061909
1,
19071910
)
1911+
.is_ok());
1912+
assert!(tree
1913+
.add_folder(
1914+
FolderMetadata {
1915+
parent: 1,
1916+
name: "fd2".to_string(),
1917+
..Default::default()
1918+
},
1919+
3,
1920+
2,
1921+
1,
1922+
)
1923+
.is_ok());
1924+
assert!(tree
1925+
.add_folder(
1926+
FolderMetadata {
1927+
parent: 1,
1928+
name: "fd2".to_string(),
1929+
..Default::default()
1930+
},
1931+
4,
1932+
2,
1933+
1,
1934+
)
19081935
.err()
19091936
.unwrap()
19101937
.contains("children exceeds limit"));
1911-
19121938
tree.get_mut(&0).unwrap().status = 1;
19131939
assert!(tree
19141940
.add_folder(
@@ -1917,7 +1943,7 @@ mod test {
19171943
name: "fd2".to_string(),
19181944
..Default::default()
19191945
},
1920-
2,
1946+
4,
19211947
1,
19221948
2,
19231949
)
@@ -1932,7 +1958,7 @@ mod test {
19321958
name: "fd2".to_string(),
19331959
..Default::default()
19341960
},
1935-
2,
1961+
4,
19361962
1,
19371963
2,
19381964
)

src/ic_oss_types/src/file.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ pub struct MoveInput {
161161
pub to: u32,
162162
}
163163

164+
#[derive(Debug)]
164165
pub struct UrlFileParam {
165166
pub file: u32,
166167
pub hash: Option<ByteArray<32>>,

0 commit comments

Comments
 (0)